【发布时间】:2021-01-26 18:44:25
【问题描述】:
我目前正在做一个项目,想知道是否有一种方法可以计算数据集中指定范围内的值的标准差。例如,我想计算我的整体数据中小于等于 0.5 但大于等于 -0.5 的数据点的标准差。
【问题讨论】:
标签: excel excel-formula
我目前正在做一个项目,想知道是否有一种方法可以计算数据集中指定范围内的值的标准差。例如,我想计算我的整体数据中小于等于 0.5 但大于等于 -0.5 的数据点的标准差。
【问题讨论】:
标签: excel excel-formula
使用这个:
=STDEV(IF((A1:A1000>=-0.5)*(A1:A1000<=0.5),A1:A1000))
根据版本不同,退出编辑模式时可能需要使用 Ctrl-Shift-Enter 输入数组,而不是 Enter。
A1:A1000 也是一个数组公式,应更改为实际数据集。
或者如@JohnColeman 所示:
=STDEV(IF(ABS(A1:A1000) <= 0.5, A1:A1000))
甚至更短。还是和上面说的原公式一样需要。
【讨论】:
=STDEV(IF(ABS(A1:A1000) <= 0.5, A1:A1000)) 稍微短一些。
一种可能的解决方案是在您的数据列旁边创建另一列,并在该列中创建一个公式,仅当单元格符合您的过滤条件时才将数字填充到单元格值中。例如,像这样,假设您的数据在 A 列中:
=IF(OR(A1>0.5,A1<-0.5),A1,"")
然后取B列的标准差。
【讨论】:
应该是:IF(OR(A1>0.5,A1<-0.5),"",A1)
但除此之外,是的,Nate 的回答是获得答案的最快捷的方法。
这是一次性的,还是您需要在将要更新的表上不断显示该子集的标准差?
【讨论】: