我试图在 python 中找到数字的标准偏差。这是一个入门级的编程类,所以我避免尝试使用一个函数,因为它们还没有被引入。
该程序允许我将数字添加到列表中,分析所述列表,然后带出平均值、最小值、最大值、STDev 等。我已经成功地显示了除 STDev 之外的所有内容,我不断收到的错误是浮动对象不可迭代。这是相关部分的代码:
elif (menuchoice == 4):
sum = 0.0
print("std deviation")
stdev = 0.0
for i in range(listcount):
scorenum4 = eval(scorenum[i])
scoreaverage2 += scorenum4
scoreaverage2 /= listcount
for i in range(listcount):
stdev = []
scorenum3 = eval(scorenum[i])
stdev += (scorenum3 - scoreaverage2)**2
dev = sqrt((stdev)/listcount-1)
print(dev)
任何帮助都会很好,谢谢。
- 自我编辑 - 我刚刚从我的 for 循环中删除了 stdev=[],不知道为什么它在那里 - 我现在得到了答案,但它在数学上是关闭的
- 更改为 dev = sqrt((stdev)/listcount) 并修复了我的数学错误,DSM 也确认了此修复。谢谢
- 程序现在运行正常!呜呜。谢谢大家的建议。