vc++如何写求方差的程序

vc++如何写求方差的程序,第1张

#include "iostreamh"

#include "mathh"

void main()

{

int a[10]={20,45,86,5,75,38,61,152,16,55};

double fAvg=0; //平均值

for (int i=0;i<10;i++)

fAvg+=a[i];

fAvg/=10;

double fStdDiff=0; //方差

for(i=0;i<10;i++)

fStdDiff+=pow(a[i]-fAvg,2);

fStdDiff/=10;

cout<<"方差:"<<fStdDiff<<endl;

}

以上是一个求方差的简单的例子,上述是对10个数计算处理的,具体应用时,具体改变。

现在计算机是每个学生必备的学习工具,那么计算器怎么算方差/标准差呢?今天小编为大家讲讲计算器怎么算方差/标准差,希望对大家有所帮助。

材料/工具

计算机

方法

1/7

首先打开计算器之后,点击右上角的MODE键。

2/7

然后选择SD,按下面键盘的数字1就可以了。

3/7

然后最上面有一个SD就表示可以开始录入程序了,输入一个数字之后然后点M+就录入成功了。

4/7

接着点击左上角的“SHIFT”键。

5/7

然后按一下2,就可以选择函数

6/7

然后第一个是平均数,第二个是总体标准差,第三个是样本标准差。

7/7

最后第二个计算的总体标准差,平方之后也可以变成样本标准差。

如下:

数据集a有变量:x1,x2,x3等等

求各变量的均值方差,代码如下:

mean(a$x1) var(a$x1)。

mean(a$x2) var(a$x2)。

mean(a$x3) var(a$x3)。

……

如果有无效值,需要在括号内加入narm=T。

R是用于统计分析、绘图的语言和 *** 作环境。

R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。

R可以看作贝尔实验室(AT&T BellLaboratories)的Rick Becker、John Chambers和Allan Wilks开发的S语言的一种实现。当然,S语言也是S-Plus的基础。

所以,两者在程序语法上可以说是几乎一样的,可能只是在函数方面有细微差别,程序十分容易地就能移植到一程序中,而很多一的程序只要稍加修改也能运用于R。

双因素方差分析SPSS实现流程

有一水稻施肥的盆栽试验,设置了5个处理:A1和A2分别施用两种不同工艺流程的氨水,A3施碳酸氢铵,A4施尿素,A5为对照。每个处理各4盆,随机置于同一试验大棚。水稻稻谷产量见下表。现分析不同施肥处理下,水稻稻谷产量之间是否有显著差异。

113 课程实习任务

①按课程设计题目要求设计脚本;

②脚本能够完成对水稻数据的单因素方差分析;

③编写代码;

④脚本分析与调试;

⑤撰写实验报告。

114 课程实习目标

①巩固并加深对R语言的理解和掌握;

②通过课外学习拓展课程知识面;

③提高运用R语言解决生活实际问题的能力;

④初步掌握开发简单脚本的基本方法;

⑤掌握书写程序设计与软件开发的阐述性、总结性文档。2 程序设计层次及说明展示

由于采用代码注释的方法,形式上不太美观,且不容易直接看到结果,造成阅览不变,故笔者采用了将脚本文件分部分执行,截图进行说明的方法,让每部 *** 作清晰明了,结果明显。再在本节末尾附上代码文件以供阅览。

21 数据录入

此处是直接进行了程序录入,将数据录入参数shuidaodata中。其中,每行数据对应一个组别。

而这里可以也可使用scan函数进行交互键入,又或者将数据保存为csv格式,再用readcsv函数根据途径录入也可以。

22 转化为数据框

这里根据每行对应的类型不同分别命名。命名的列量名称为参数name,数据框名为参数shuidao。

23 数据融化和冗杂数据处理

由于水稻数据内容构成比较简单,因素单一,所以不需要再融化数据框 *** 作了,因为在数据框形成时已经完成了融化处理的结果,再进行转化反而繁琐,故不需要使用melt函数。同理,此份水稻数据中不包含冗余成分,故也同样不需要冗杂数据处理。

24 数据分析

此处直接使用aov函数进行单因素方差分析,得到结果参数result的F值为1118,p值小于005,且各因子水平的均值之间存在十分显著差异。

25 初步结论

经过单因素方差分析可得知,肥料因素对产量的结果影响十分显著,也因此可以再做一些步骤来确认其真实性,以及深入了解其差异性的特质。

26 正态性检验261 Q-Q图

这里先用lm函数进行线性回归模型拟合,将结果参数mo录入qqPlot函数中,得到下图:

可见回归曲线在范围内,故数据符合正态性检验。

262 其他方法

检验正态性的方法不唯一,在网上资料查询中,还有如下方法:

1kstest函数,但是由于数据中包含重复数值,故前提假设不成立,不便使用。

2W检验的shapirotest函数,得出p值大于005时数据正态性得到检验。

可见水稻数据正态性依旧得到检验。

3 fBasics包里的shapiroTest函数

可见水稻数据正态性依旧得到检验。

27 方差齐性检验

由于数据满足正态性,故使用bartletttest函数进行方差齐性检验,得出结果p值远大于显著性水平005,因此不能拒绝原假设,认为不同水平下的水稻数据是等方差的。故等方差性得到检验。

而当数据不满足正态性时,也可以使用leveneTest函数进行方差齐性检验。

28 各组均值差异281 TukeyHSD函数的杜奇检验

为更深一步探索每组之间的差异,采用TukeyHSD函数检验,如下:

其中修改了par中的绘图参数,以便图形更加简洁清晰,绘图如下:

在这里可以清晰的看出,与0坐标线是值信水平,与其相交的部分就是效果不显著的组别,反之则是效果显著的组别。也因此可以得出结论:A1-A5、A2-A4、A3-A5、A4-A5之间有显著的差异。

282 其他方法

同样的,在网络搜索中,还有其他的方法可以揭示组别之间的差异,此处我使用的是多重t检验法:

在这里可以清晰的看出,p值小于005的就是差异较为显著的组别,和上一小节的结论一致。

29 结论

从水稻数据的单因素方差分析结果得知,肥料因素对产量的结果影响十分显著,且结果经检验符合正态性、等方差性,故结果较为可信。

最后经过各组均值差异检测后得知,A1-A5、A2-A4、A3-A5、A4-A5四组之间差异较为显著,且由题干可知,A5为对照组,故可知A1、A3、A4三组肥料效果较好。

210 代码展示

#数据录入

 shuidaodata<-c(24,30,28,26,

 27,24,21,26,

 31,28,25,30,

 32,33,33,28,

 21,22,16,21)

#转化为数据框

 name<-rep(paste(“A”,1:5,sep=”“),each=4)

 shuidao<-dataframe(name,shuidaodata)

#单因素方差分析

 result<-aov(shuidaodata~name,data=shuidao)

 summary(result)

#正态性检验

#Q-Q图

 mo<-lm(shuidaodata~name,data=shuidao)

 library(car)

 qqPlot(mo,main=”Q-Qplot图”,las=T)

#W检验

 #shapirotest(shuidaodata)

#fBasics包的shapiroTest

 #library(fBasics)

 #shapiroTest(shuidaodata)

#方差齐性检验

 bartletttest(shuidaodata~name,data=shuidao)

#各组均值差异

#杜奇检验

 duqi<-TukeyHSD(result)

 par(lwd=2,cexlab=15,cexaxis=15,colaxis=”blue”,las=1)

 plot(duqi,mgp=c(3,05,0))

#多重t检验法

 #pairwisettext(shuidaodata,name)

以上就是关于vc++如何写求方差的程序全部的内容,包括:vc++如何写求方差的程序、计算器怎么算方差/标准差、r语言如何同时求几列数据的均值和方差等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10121276.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存