Python Numpy数组:序列太大

Python Numpy数组:序列太大,python,numpy,Python,Numpy,我有一个大小为11的数组,称为“波长”,还有一个更大的大小为n的数组,称为“MN”。“model”是一个mbyn数组 我正在这样做: for i in xrange(10+len(wavelength)-2): y=np.empty(model[MN][i],float) 并将其视为错误: File "test_prog.py", line 658, in <module> y=np.empty(model[MN][i],float) ValueError: seq

我有一个大小为
11
的数组,称为“波长”,还有一个更大的大小为
n
的数组,称为“MN”。“model”是一个
m
by
n
数组

我正在这样做:

for i in xrange(10+len(wavelength)-2):
  y=np.empty(model[MN][i],float)
并将其视为错误:

  File "test_prog.py", line 658, in <module>
    y=np.empty(model[MN][i],float)
ValueError: sequence too large; must be smaller than 32
文件“test_prog.py”,第658行,在
y=np.空(型号[MN][i],浮点数)
ValueError:序列太大;必须小于32

我不知道该怎么办。我在网上找过其他地方,但找不到任何明显的实质内容

序列太大
错误表示您正在创建维度大于32的多维数组。例如:
np.empty([1]*33)
将引发此错误

是否确实要创建>32维数组?如果要创建与
model[MN][i]
形状相同的空数组,应使用:
empty\u like()

使用:

empty_like()
在您的情况下,它应该是:

y=np.empty_-like(型号[MN][i],浮点型)

你为什么要扔掉这么多的
y
?哎呀,忘了这个定义。请参阅编辑。您确定为
模型
编制的索引正确吗?如果
model
是m x n,而
MN
是长度n,那么您肯定想要
model[:,MN]
序列太大
错误意味着您正在创建一个维度大于32的多维数组。例如:
np.empty([1]*33)
将显示此错误。是否确实要创建>32维数组?如果要创建与
model[MN][i]
形状相同的空数组,应使用:
empty\u like()
@HYRY这是正确的答案。你能不能把这个作为一个答案贴出来,这样遇到同样错误的人就可以很容易地看到它?