0

我已经对此错误进行了一些研究,但我仍然无法修复它。我尝试了不同的语法和代码。错误似乎在 mean_value= 和 std_value= 线上。

# Moving Mean
for i in enumerate(inputs_filtered):
    mean_value = sum(inputs_filtered[i-smoothing:i])/smoothing

# Standard Deviation
for i in enumerate(inputs_filtered):
    std_value = math.sqrt(sum((inputs_filtered[i-smoothing:i])-mean_value)/smoothing)
4

1 回答 1

1

您的问题是,enumerate在列表上使用会返回一个元组,而不是i像您预期的那样,它返回索引和该索引的值。

所以在你的情况下,i是一个元组,你试图从smoothing一个元组中减去

例如:

for index, val in enumerate([10,20,30,40,50]):
    print(index, val)
0 10
1 20
2 30
3 40
4 50

如果您需要迭代并获取每个索引的值,请使用:

for value in inputs_filtered:
    # do something...
于 2020-10-21T10:00:11.143 回答