我想取数组C2,大小为N,1,并制作数组B,大小为N-1,1。B [0] = C2 [1]B [1] = C2 [2]
依此类推。我的代码是:
import numpy as np import pandas as pd fields = "B:D" data = pd.read_excel (r'C:\Users\file.xlsx', "Sheet2", usecols=fields) N = 2
Covariance calculation
C1 = data.cov() C2 = data.var()
B = np.zeros(shape=(N,1))
for i in B: B[i,1] = C2[i+1,1]
但是错误是:
ValueError: Can only tuple-index with a MultiIndex
我知道这是一个简单的错误,但是找不到:S(新的python用户)
首先,确定要使用numpy数组吗?这似乎是python列表的工作。
接下来,您想对for i in B:
做什么?我是什么类型?
在这种情况下,对B进行迭代将把i
设置为[0.]
,现在您可以看到下一行替换将失败
B[[0.],i] = C2[[0.]+1,1]
我认为您想像for i in range(N):
那样对N进行迭代>