我想存储这个:
for i in range(len(cpi)):
print((cf[:i+1] / cpi[i]).astype(int))
成矩阵。我试过这个:
payment = np.zeros((len(cpi), len(cpi)))
for i in range(len(cpi)):
payment = cf[:i+1] / cpi[i]).astype(int)
但这给了我错误的矩阵,如下所示:
[[0 1 0 ..., 1 0 3]
[2 9 2 ..., 4 0 4]
[4 0 8 ..., 9 6 3]
...,
[0 0 0 ..., 0 0 0]
[1 3 0 ..., 1 1 1]
[0 3 0 ..., 1 0 0]]
当输出显示是这样的:
[[0 1 0 1 1 1 0 5 1 0 2]]
[[0 0 0 0 0 0 0 2 0 0 1]
[1 3 1 0 0 1 1 1 1 0 1]]
[[0 0 0 0 0 0 0 1 0 0 0]
[0 2 0 0 0 0 0 0 0 0 0]
[1 0 2 0 2 1 1 0 2 1 0]]
[[0 1 0 1 1 1 0 5 1 0 2]
[1 6 1 0 0 1 1 1 2 0 2]
请注意,并非所有元素只是其中的一部分。
问题是您每次循环时都为支付变量分配新值,而您实际上只想附加到它。例如(未测试):
payment=[]
for i in range(len(cpi)):
payment.append((cf[:i+1] / cpi[i]).astype(int))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句