创建具有随机值的列表数组
Create array of lists with random values
我正在尝试创建示例数据,例如下面的 smpl_dt 数组示例。我想创建一个数组,其中每个元素都是 0.0001 和 1 之间的 8 个随机数的列表。
我可以使用以下方法轻松创建 0 到 1 之间的 8 个随机数的列表:
Code:
[rd.uniform(0.0001,1) for _ in range(8)]
但是我在创建数组时遇到了问题。非常感谢任何提示。
示例数据:
print(smpl_dt[0:5])
array([[0.0001, 0.0001, 0.3 , 0.0001, 0.2 , 0.0001, 0.2 , 0.3 ],
[0.1 , 0.1 , 0.1 , 0.2 , 0.2 , 0.2 , 0.1 , 0.0001],
[0.1 , 0.0001, 0.2 , 0.0001, 0.1 , 0.2 , 0.0001, 0.4 ],
[0.3 , 0.0001, 0.0001, 0.2 , 0.1 , 0.2 , 0.2 , 0.0001],
[0.2 , 0.3 , 0.1 , 0.0001, 0.2 , 0.1 , 0.1 , 0.0001]])
使用size
参数。例如,
>>> arr = np.random.uniform(0.0001, 1, size=[4,8])
array([[0.67011692, 0.06662612, 0.13316262, 0.80666553, 0.88362879, 0.21492319, 0.22063457, 0.90038505],
[0.87799324, 0.6486384 , 0.27700837, 0.54103365, 0.52688455, 0.93159481, 0.09245974, 0.54593494],
[0.4680346 , 0.17802325, 0.21506341, 0.95917602, 0.20481784, 0.53165515, 0.1657028 , 0.39784648],
[0.38951888, 0.03457946, 0.90076103, 0.13769038, 0.303991 , 0.57457931, 0.64236861, 0.85915101]])
不使用 numpy:
import random as rd
arr = [[rd.uniform(0.0001,1) for _ in range(8)] for _ in range(arrlen)]
我正在尝试创建示例数据,例如下面的 smpl_dt 数组示例。我想创建一个数组,其中每个元素都是 0.0001 和 1 之间的 8 个随机数的列表。
我可以使用以下方法轻松创建 0 到 1 之间的 8 个随机数的列表:
Code:
[rd.uniform(0.0001,1) for _ in range(8)]
但是我在创建数组时遇到了问题。非常感谢任何提示。
示例数据:
print(smpl_dt[0:5])
array([[0.0001, 0.0001, 0.3 , 0.0001, 0.2 , 0.0001, 0.2 , 0.3 ],
[0.1 , 0.1 , 0.1 , 0.2 , 0.2 , 0.2 , 0.1 , 0.0001],
[0.1 , 0.0001, 0.2 , 0.0001, 0.1 , 0.2 , 0.0001, 0.4 ],
[0.3 , 0.0001, 0.0001, 0.2 , 0.1 , 0.2 , 0.2 , 0.0001],
[0.2 , 0.3 , 0.1 , 0.0001, 0.2 , 0.1 , 0.1 , 0.0001]])
使用size
参数。例如,
>>> arr = np.random.uniform(0.0001, 1, size=[4,8])
array([[0.67011692, 0.06662612, 0.13316262, 0.80666553, 0.88362879, 0.21492319, 0.22063457, 0.90038505],
[0.87799324, 0.6486384 , 0.27700837, 0.54103365, 0.52688455, 0.93159481, 0.09245974, 0.54593494],
[0.4680346 , 0.17802325, 0.21506341, 0.95917602, 0.20481784, 0.53165515, 0.1657028 , 0.39784648],
[0.38951888, 0.03457946, 0.90076103, 0.13769038, 0.303991 , 0.57457931, 0.64236861, 0.85915101]])
不使用 numpy:
import random as rd
arr = [[rd.uniform(0.0001,1) for _ in range(8)] for _ in range(arrlen)]