【发布时间】:2015-09-08 09:30:15
【问题描述】:
我正在尝试编写一个函数来查找数据集的方差。
我遇到了一个小问题。我有一个数组,我想找出数组中每个元素与平均值的距离。这是我所写内容的简化版本:
>y={1,2,3}
>y_average=2
>y_diff={}
>for key, value in pairs(y) do y_diff[key]=(y[key]-y_average)
>>return unpack(y_diff)
>>end
-1
我想得到什么: -1, 0, 1
为什么它只给我第一个值而不是全部三个?
【问题讨论】:
-
您的返回将发生在 for 循环的第一次迭代中,并停止循环继续。将
return unpack(y_diff)移到循环的end之外/下方。 -
太棒了。非常感谢。