找出有多少高于标准开发

Posted

技术标签:

【中文标题】找出有多少高于标准开发【英文标题】:Finding how many are above standard dev 【发布时间】:2014-11-02 06:28:00 【问题描述】:

现在,我想计算有多少天的销售额高于平均值的 1 标准差。我该如何解决这样的问题?

average_value= input("What is the average value of sales a day?\n")
std_dev= input("What is the standard deviation of sales a day?\n")
days= input("How many days do you want to simulate?\n")

sales=[random.gauss(average_value,std_dev) for i in range(days)]

【问题讨论】:

您希望min(x)max(x) 做什么? 【参考方案1】:

从 the docs、minmax 获取一个可迭代的,而不是像你一样的 int。如果您想找到从循环中获取的值的最小值和最大值,您需要将它们存储到一个列表中,然后在创建的列表中调用 minmax 函数。

【讨论】:

numbers = [] 创建一个列表,然后,在您的循环中,您需要调用 numbers.append() 将您的值添加到列表中。你可以找到more information here。【参考方案2】:

您不能使用intmaxminx 是。你需要列个清单。

import random

days = 10
average_value = 5.0
std_dev = 1.0

values = [random.gauss(average_value, std_dev) for i in range(days)]

>>> values
[4.610687715224258, 6.322701044169396, 4.584676199460875, 4.6351867518251595, 4.368399817684789, 4.201682562256684, 5.5211434405667354, 5.744873752293046, 4.885975367514446, 4.7502049666640405]

>>> min(values)
4.201682562256684

>>> max(values)
6.322701044169396

【讨论】:

谢谢,这行得通。现在,如果我想找到一种方法来确定有多少值比平均值高 1 个标准差,我该如何在程序中做到这一点?我确实知道它背后的数学原理,但我不知道如何检查列表中的每个值并检查它是否确实在上面。【参考方案3】:

您必须确保天数是整数

days = int(days)

【讨论】:

这根本不是问题。问题是min(x)max(x)。将days 转换为int 将无法解决任何问题。

以上是关于找出有多少高于标准开发的主要内容,如果未能解决你的问题,请参考以下文章

如何在python中找到高于第二个标准差的值的百分比?

如何找出剑道网格中有多少行? [复制]

我想开发一个小程序,大概需要多少钱?

如何找出 Xcode 项目中有多少行代码?

如何找出 Outlook 中有多少位版本的加载项? [复制]

在python中,如何找出句子中有多少组数字[重复]