如何创建一个数组到numpy数组?
def test(X, N):
[n,T] = X.shape
print "n : ", n
print "T : ", T
if __name__=="__main__":
X = [[[-9.035250067710876], [7.453250169754028], [33.34074878692627]], [[-6.63700008392334], [5.132999956607819], [31.66075038909912]], [[-5.1272499561309814], [8.251499891281128], [30.925999641418457]]]
N = 200
test(X, N)
我会遇到错误
AttributeError: 'list' object has no attribute 'shape'
所以,我认为我需要将X转换为numpy阵列?
答案
使用numpy.array
使用shape
属性。
>>> import numpy as np
>>> X = np.array([
... [[-9.035250067710876], [7.453250169754028], [33.34074878692627]],
... [[-6.63700008392334], [5.132999956607819], [31.66075038909912]],
... [[-5.1272499561309814], [8.251499891281128], [30.925999641418457]]
... ])
>>> X.shape
(3L, 3L, 1L)
NOTE X.shape
为给定数组返回3个项目元组;[n, T] = X.shape
加薪ValueError
。