您好我正在尝试从之前的数组创建一个新数组。这样,在新数组中,第一个元素是来自现有数组的前20个元素的平均值。这是我的代码。我不确定为什么它不起作用。
#Averages
RPMA=[]
for i in range(9580):
for j in range (0,191600):
a=RPM.iloc[j:j+20]
RPMA(i)= a.mean()
答案 0 :(得分:1)
在我看来,你喜欢使用错误的括号。这一行:
RPMA(i)= a.mean()
......应该是这样的:
RPMA[i]= a.mean()
但我不是Python专家。我猜它认为RPMA(i)
是一个函数,因为你使用括号,在这种情况下你会尝试为函数调用赋值,就像错误所说的那样。
但是,尝试在数组末尾分配新值将导致IndexError
,因为数组元素不存在,需要添加。你可以做的是:
RPMA.append(a.mean())
...将数据附加到数组的末尾(即添加新元素)。
答案 1 :(得分:0)
谢谢大家。正如大多数人所建议的那样,我在代码中进行了以下更改,现在它的工作正常!
RPMA=[]
for j in range (0,191600, 20):
a=RPM.iloc[j:j+19]
RPMA.append(a.mean())