将numpy ndarray分配给列表

时间:2018-12-07 16:39:43

标签: python pandas loops numpy

有人可以帮助我解决我的问题吗?我创建了一个循环,该循环在每次执行时都会生成一个大小为(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],依此类推。

我的错误很可能在最后一行

1 个答案:

答案 0 :(得分:0)

快速草图,您可以根据需要进行修改

import random

a=[] #start with an empty set
k=0
while k< 5:
    b=random.sample(range(1,100), 5) #get a random sample of length 5 within range of 1-100
    a.append(b) # add/'append' b to your currently empty set of 'a'
    print a #print current contents of 'a'
    k=k+1

我没有运行它,但是看起来很直观。

祝你好运!