小编ano*_*fiz的帖子

python中的标准偏差 - 浮点对象不可迭代

我试图在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)
Run Code Online (Sandbox Code Playgroud)

任何帮助都会是geat,谢谢.

- 自我编辑 - 我刚从我的for循环中删除了stdev = [],不知道为什么它在那里 - 我现在得到一个答案,但它在数学上是关闭的

  • 更改为dev = sqrt((stdev)/ listcount)并修复了我的数学错误,DSM也确认了此修复.谢谢
  • 程序现在正常运行!活泉.谢谢大家的建议.

python python-3.x

1
推荐指数
1
解决办法
3298
查看次数

标签 统计

python ×1

python-3.x ×1