问题标签 [standard-deviation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1047 浏览

c# - How to calculate and display standard deviation?

I am trying to display a spectrum and it's upper and lower deviation. Therefor I have a Class, "SpectrumClass" where the cooridantes are stored in a DataTable (dtCoords).

The spectrum I am showing is an average of several other spectra. Whith those spectra I am calculating the standard-deviation as follows (all spectra have the same amount of datapoints):

Later when it comes to the visual part I create two new Series which should contain the upper and lower deviation. Here I am simply adding or aubtracting the Y-value for the according point of the average spectrum.

And here is my problem:

I think the standard-deviation spectra (in gray) should look the same?

I think the standard-deviation spectra (in gray) should look the same? I randomly checked standard-deviation points, they seem to be right. Could that be a mistake in one of my loops? I hope somebody experienced the same, beacuase checking throughover thousand points isn't fun

Thanks in advance.

0 投票
1 回答
126 浏览

python - 如果列表的值大于某个值,则更改它们的值

我正在从文本文件中读取一个列表并获取该列表的标准偏差,我想知道如何使值偏离均值一个标准差,仅用作偏离均值的一个标准差。这是我正在使用的代码的一部分:

此代码仅删除一个标准偏差之外的任何值。我将如何更改它,使这些删除的值与平均值相差 1 个标准差,但保留在数据集中?

例如,如果我的列表是 [1,2,3,4,5,20],则标准差为 7.08,平均值为 5.88。所以偏离平均值的一个标准偏差是 12.96 或 -1.2,所以目前我的代码将排除除此之外的任何数字,因此列表将为 [1,2,3,4,5] 但我希望列表实际读取 [ 1,2,3,4,5,12.96]。我该怎么做

0 投票
2 回答
36663 浏览

r - 如何计算 R 中的合并标准差?

我想计算数据框中所有唯一站点的合并(实际加权)标准偏差。

这些站点的值是单一物种林分的值,我想合并平均值和标准差,以便我可以比较阔叶林和针叶林。
这是具有阔叶林值的数据框 (df):

Keybl 是网站的代码。合并 SD 的公式为:

(对不起,我不能发图片,也没有找到可以直接进入公式的链接)

其中 2 是组数,因此将根据站点而变化。我知道这用于 t 检验,并且要比较两组。在这种情况下,我不打算比较这些组。我的教授建议我使用这个公式来获得加权标准差。我没有找到以我需要的方式包含此公式的 R 函数,因此我尝试构建自己的。然而,我是 R 新手,不太擅长制作函数和循环,因此希望能得到您的帮助。

这是我到目前为止得到的:

1)函数本身不正确,因为它给出的值略低于应有的值,我不明白为什么。会不会是z+1到达最后一行的时候没有停止?如果是这样,如何纠正?

2)循环是完全错误的,但这是我在几个小时没有成功后能想到的。

有谁能够帮助我?

谢谢,

安特拉

0 投票
1 回答
619 浏览

python - 计算在线标准差

我想计算运行时进入系统的每个值的标准偏差。

我不确定如何实现它。

我实现了在线平均

我希望在线标准差的原型为:

0 投票
1 回答
581 浏览

time-complexity - 确定是否存在标准差 <= s 的大小为 n 的子集

给定一堆数字,我试图确定在数字非常密集的地方是否存在“团块”。

为了使事情更准确,我想我会问一个更具体的问题:给定一组数字,我想确定是否存在n具有标准偏差 <=的大小子集s。如果有很多这样的子集,我想找到具有最低标准偏差的子集。

所以问题#1:这个正式的问题定义是否有效地捕捉到了密集数字“团块”的直观概念?

  • 编辑:我实际上并不关心确定哪些数字属于这个“团块”,我更感兴趣的是确定团块的中心位置,这就是为什么我认为n提前指定是可以的。但请随时纠正我!

问题 #2:假设确实如此,实现这样的事情的最佳方法是什么(特别是,我想要一个时间复杂度最低的解决方案)?到目前为止,我认为我有一个可以运行的解决方案n log n

  • 首先,请注意,给定大小的最低标准偏差拥有子集必须由连续数字组成。所以第1步是对数字进行排序(这是n log n
  • 其次,取第一个n数字并计算它们的标准差。如果我们的数字数组是从 0 开始的,那么第一个n数字是[0, n-1]. 要获得标准偏差,请计算s1s2如下:

    • s1 = sum of numbers
    • s2 = sum of squares of numbers

    然后,维基百科说标准差是sqrt(n*s2 - s1^2)/n. 将此值记录为迄今为止看到的最高标准偏差。

  • [1, n]找到, [2, n+1], ...的标准差,[3, n+2]直到找到最后一个n数字。如果您跟踪s1s2运行总计,则每次计算只需要恒定的时间:例如,要获得 的标准差,只需从和总计[1, n]中减去第 0 个元素并添加第 n 个元素,然后重新计算标准偏差。这意味着算法的整个标准偏差计算部分需要线性时间。s1s2

所以总时间复杂度n log n

我的评价对吗?有一个更好的方法吗?我真的需要它在相当大的场景上快速运行,所以越快越好!空间不是问题(我认为)。

0 投票
1 回答
68 浏览

mysql - 如何在没有组的 MIN() 和 MAX() 的情况下获取项目组的 STDDEV()

我有一张像

等等

如何获得每个组(啤酒、葡萄酒等)STDDEV()的价值MIN()MAX()价值? 即我怎么得到count

?

另外,我怎样才能获得像上面这样的查询返回的总行数?

到目前为止我已经尝试过

但这适用于MAX()整个桌子,而不仅仅是 GROUP BY

0 投票
2 回答
607 浏览

ios - UIImage/CGImage 的标准差

我需要计算 UIImage 对象内的图像的标准偏差。我已经知道如何访问图像的所有像素,一次一个,所以我可以做到这一点。我想知道框架中是否有一个函数可以以更好和更有效的方式执行此操作......我找不到它,所以它可能不存在。有谁知道该怎么做?再见

0 投票
1 回答
5052 浏览

matlab - 如何计算nx3向量中每100个点的标准差?

假设我有一个包含n行的矩阵,每行包含三个坐标(x、y 和 z)。我想计算 MATLAB 中每 100 个点的标准差。例如,对于我应用的前 100 个 x 坐标std,然后应用相同的 y 和 z 坐标,依此类推……最终,我每 100 个点都有一组 x、y 和 z 值。我怎么做?

0 投票
1 回答
4118 浏览

python - finding standard deviation down a column of data in python

I am looking to find the standard deviation of the out put of the first chunk of code. It results in lists of seven numbers ie: [[-9999.0, -9999.0, -9999.0, -9999.0, -9999.0, -9999.0, -9999.0], [-9999.0, -9999.0, -9999.0, -9999.0, -9999.0, -9999.0, -9999.0], [0.040896, 0.018690, 0.0056206, -9999.0, 0.038722, 0.018323, -9999.0], [0.03944364, -9999.0, 0.037885, 0.014316, -9999.0]]

The second chunk of code finds the mean of the columns(['0.040170', '0.018057', '0.004782', '0.000000', '0.037378', '0.014778', '0.000000'])

I began writing the third chunk of code to find standard deviation but F prints out blank. Also I do not think I am writing the function properly to subtract each positive number by the average, any help would be appreciacted

0 投票
1 回答
1270 浏览

python - 遍历列表找到每个点的标准偏差

我有这段代码应该找到 A 中每个数字的标准偏差,其中 A 是由 7 个值组成的列表列表。

这正确地给了我第一个 7 个数字列表的标准偏差,但不应该map(sigma, zip(*A))让它遍历所有列表?我也试过[sigma(A) for col in xrange(len(rows[0]))],但也没有用。理想情况下,标准偏差也将保存为七人列表。任何帮助表示赞赏。

更新:这是我现在拥有的代码;

它完成了我想要它做的所有事情,但是当我以这种方式运行它时,它只输出第一行。如果'return'语句被'print'替换print G并被删除,我想要的所有行的输出都会被打印出来。如何将所有这些值存储在列表中?我假设这就是G = map(sigma, zip(*A))问题所在。我尝试将其更改为G = map(sigma, A)但是这只给了我第一列的数字。有没有人有任何想法?