我有一个大小为N * N * N
的多维数据集,比如N=8
。立方体的每个维度都离散为1,因此我标记了点(0,0,0), (0,0,1)..(N,N,N)
。在每个标记点,我想分配一个随机值,从而产生一个存储每个顶点值的数组。例如val[0,0,0]=1, val[0,0,1]=1.2 val[0,1,0]=1.3
,...
如何编写python代码来实现这一目标?
答案 0 :(得分:1)
您可以简单地生成列表列表。虽然效率不高,但它允许您像val[0][0][0]
一样访问您的多维数据集。
arr = [[[] for _ in range(8)] for _ in range(8)]
arr[0][0].append(1)
答案 1 :(得分:1)
你的意思是:
import numpy as np
n = 5
val = np.empty((n, n, n)) # Create an 3d array full of 0's
val[0,0,0] = 11
val[0,0,1] = 33
print(val[0, 0])
array([ 11., 33., 0., 0., 0.])
答案 2 :(得分:0)
对于大型矩阵,请查看使用numpy
。这是它旨在解决的问题