C#基础 您所在的位置:网站首页 sas计算标准差和方差 C#基础

C#基础

2024-05-11 14:39| 来源: 网络整理| 查看: 265

首先我们先了解样本标准差和总体标准差:

样本标准差=方差的算术平方根=s=sqrt(((x1-x)^2 +(x2-x)^2 +......(xn-x)^2)/(n-1)) 总体标准差=σ=sqrt(((x1-x)^2 +(x2-x)^2 +......(xn-x)^2)/n )

下面是简单的区别:

上面的数据是用Excel来计算的,方便对我们软件输出的数据做对比。

https://jingyan.baidu.com/article/17bd8e5275d85985aa2bb855.html

这个是excel里对标准差函数的使用方法

 

 

  了解了基本概念,下面就是C#代码了,在窗体创建一个按钮来测试 private void button4_Click(object sender, EventArgs e) { float[] data = new float[] { 290, 517, 850, 484, 856, 784, 666, 865, 445, 243 };//不定长数组 float 样本标准差, 总体标准差; STDEV(data,out 样本标准差,out 总体标准差); MessageBox.Show(样本标准差.ToString() + "," + 总体标准差.ToString()); } /// /// 样本标准差和总体标准差计算 /// /// 数据数组 /// 样本标准差 /// 总体标准差 public void STDEV(float[] arrData,out float std_dev,out float STDP) //计算标准偏差 { float xSum = 0F;//样本总和 float xAvg = 0F;//样本平均值 float sSum = 0F;//方差的分子 //float tmpStDev = 0F; int arrNum = arrData.Length;//得到样本数量,分母 for (int i = 0; i < arrNum; i++)//循环计算得到样本总和 { xSum += arrData[i]; } xAvg = xSum / arrNum;//计算得到样本平均值 for (int j = 0; j < arrNum; j++)//得到方差的分子 { sSum += ((arrData[j] - xAvg) * (arrData[j] - xAvg)); } std_dev = Convert.ToSingle(Math.Sqrt((sSum / (arrNum - 1))).ToString());//样本标准差 STDP = Convert.ToSingle(Math.Sqrt((sSum / arrNum)).ToString());//总体标准差 }

计算结果:

 

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有