Google sheets 当我尝试STDEV、STDEVA、STDEVP、STDEVPA时,Sheets正在对我的数据集做一些奇怪的事情
我在Google Sheets中构建了一个函数,它获取数据页并将其传递给用户,以从数据集(基于提取数据的透视表)中提取指标。所有数据都以编程方式提取,以相同的方式格式化,并按标准约定命名。我希望集合中所有值的标准偏差大于100,并且在大多数情况下,我构建的函数可以工作:Google sheets 当我尝试STDEV、STDEVA、STDEVP、STDEVPA时,Sheets正在对我的数据集做一些奇怪的事情,google-sheets,google-sheets-formula,spreadsheet,stdev,stdevp,Google Sheets,Google Sheets Formula,Spreadsheet,Stdev,Stdevp,我在Google Sheets中构建了一个函数,它获取数据页并将其传递给用户,以从数据集(基于提取数据的透视表)中提取指标。所有数据都以编程方式提取,以相同的方式格式化,并按标准约定命名。我希望集合中所有值的标准偏差大于100,并且在大多数情况下,我构建的函数可以工作: =STDEV((IF(INDIRECT($A7&"!B:B")>100,INDIRECT($A7&"!B:B"),"")) 然而,对于一些较小的
=STDEV((IF(INDIRECT($A7&"!B:B")>100,INDIRECT($A7&"!B:B"),""))
然而,对于一些较小的数据集,STDEV开始抛出代表没有传递足够参数的错误。我尝试过通过提取片段、消除阈值和尝试其他类型的STDEV进行调试(STDEVA给我一个DIV/0错误,STDEVP和STDEVPA返回0作为标准偏差),当我提取IF语句时,它看起来返回FALSE,好像集合中没有符合标准的数据。除此之外,当我将阈值降低到>0或完全消除阈值时,它仍然不起作用,并且我知道在所有大于100的出错数据集中有4+个值。事实上,同一个调用在它旁边的列中求和为非零。更重要的是,除了这些数据集之外,该函数在其他任何地方都有效
有什么好处
如需了解更多信息,请查看该工作表的链接:
这就是STDEV抛出的错误:
函数STDEV参数1需要数字值。但“”是文本,不能强制为数字
Halp使用:
=IFERROR(AVERAGEIF(INDIRECT($A15 & "!B:B"), ">100"))
以及:
=IFERROR(STDEV(IF(INDIRECT($A15&"!B:B")>100, INDIRECT($A15&"!B:B"), )))