【发布时间】:2019-05-09 11:02:22
【问题描述】:
谁能帮我解答我的问题。我创建了一个循环,它在每次执行时都会产生一个大小为 (5,) 的 numpy.ndarray,但是当循环终止并且我想打印我的代码的结果时,它只打印最后一个大小为 5 的 ndarry,我试图分配结果是一个列表,但我得到“数组索引太多”
k=0;
for i in range(M):
for j in range(N):
if table[i, j] != 0:
k=k+1;
inv=np.linalg.inv(np.dot(X.T,X));
theta[k,:] = np.dot(inv,X.T).dot(HSI[i,j,:])
我想在 theta[] 上分配结果,所以如果我想打印第二次执行的结果,我会写 theta[1] 等等。
我的错误很可能在最后一行
【问题讨论】:
-
嗨,欢迎来到 StackOverflow。您可以在列表中创建一个空列表
l = []和l.append(result)。在您的代码中,M、N、table、X、theta和HSI是什么?如果您提供可运行的代码,我们更容易为您提供帮助。请参阅How to ask 和How to create a MCVE。 -
这个问题我很难理解。您能否发布一个我可以在本地运行的示例,其中定义了 M、N、X、HSI 和表?您能否更清楚地说明您的实际要求?