gnuplot - 使用统计数据计算标准差

标签 gnuplot

我有以下数据集,

1.54    23.66
1.75    26.25
1.92    30.20
2.08    34.46
2.44    42.08
2.78    46.81
3.03    51.10
3.70    52.99
4.17    56.15
4.76    59.34

计算标准偏差 (SD)前两点,我用的是,

stats "data.dat" u 2 every ::0::1

但是,这给了我错误的 SD = 1.2950(正确的是 1.83)

* FILE: 
  Records:      2
  Out of range: 0
  Invalid:      0
  Blank:        0
  Data Blocks:  1

* COLUMN: 
  Mean:         24.9550
  Std Dev:       1.2950
  Sum:          49.9100
  Sum Sq.:    1248.8581

  Minimum:      23.6600 [0]
  Maximum:      26.2500 [1]
  Quartile:     23.6600 
  Median:       24.9550 
  Quartile:     26.2500 0

那我做错了什么? TIA。

最佳答案

您提到的正确的 1.83 值是通过 sqrt(N-1) 对标准差进行标准化时获得的,其中 N 是样本大小。这样做是为了防止估计出现偏差。也就是说,使用从总体中随机抽取的样本来计算标准差,使其期望值等于真实值。

Gnuplot stats 将提供的数据集视为总体,因此通过 sqrt(N) 进行标准化。因此,1.29 的值也是正确的,您也可以将值从一种转换为另一种。

例如:将1.29转换为1.83乘以sqrt(N/N-1)

要获得更完整的讨论,请点击此维基百科链接:

Unbiased estimation of Standard Deviation

关于gnuplot - 使用统计数据计算标准差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23900030/

相关文章:

character-encoding - gnuplot 中的星号

gnuplot - 如何设置colorbox的位置?

gnuplot - 如何在 3d 绘图的顶部边界放置刻度线?

animation - Gnuplot 中的 Gif 动画

gnuplot:绘制 X、Y 坐标及其标签

c++ - gnuplot C++ api 如何知道指针结束的位置?

latex - Gnuplot 如何表示书法字母

gnuplot - 如何绘制多个 y 轴?

gnuplot - 语法错误 : several plots, 其中之一是带有星号(星号)模式的 for 循环

ubuntu - 如何对日期数据执行指数拟合?