我正在用Python编写算法来拟合数据(我需要编写自己的算法)。但是我的阵列有问题。例如:
import math
x=[2,1]
a=sum([x[i]*x[i] for i in range(len(x))])
它正在发挥作用。但是,当我试图划分时,它无效。
import math
x=[2,1,5]
y=[3,2,5]
a=sum(([y[i]*y[i] for i in range(len(x))])/([x[i]*x[i] for i in range(len(x))]))
我该如何解决?你有什么想法吗?
答案 0 :(得分:0)
查看你的代码我相信你的目标是将y列表中的每个元素除以x列表的每个元素然后求它们,如果是这样的话,我会写出类似的东西:
import math
x=[2,1,5]
y=[3,2,5]
a = sum([yy / xx for yy, xx in zip(y, x)])
您只需遍历压缩列表并将y中的每个元素除以x中的相应元素。 在您的代码中,您试图按列表划分列表,这不是受支持的操作,这就是您收到错误的原因。