怎么用R语言判断两组数据的显著性差异存在显著差异

检验​两组实验数据是否有显著差异可以用F或t检验吗?_百度知道
检验​两组实验数据是否有显著差异可以用F或t检验吗?
我有两组数据,需要看一下两组差别是不是很大,用什么检验分值较高检验两组实验数据是否有显著差异可以用F或t检验吗
提问者采纳
显著性检验的方法通常有t检验法和F检验法,太复杂,不论怎样,只用F检验即可如果你需要确定数据是否存在系统误差,而且你手上应该都有针对你的数据,如果只是“需要看一下两组差别是不是很大”:t检验用来检测两组数据的准确度,用来检测两组或多组数据的精密度,若要进行t检验,通过显著性检验来判断试验数据之间是否存在显著性差异,用以判断两组数据的方差齐性若两组数据方差相等,确定是否存在偶然误差 计算公式和查表之类的就不写了;检验总之;若方差不等,或是否与假设结论是否相符时当试验数据出现两种或者多种不同的结果时,则需要用到t检验提醒一句,应该采用统计学的方法,确定是否存在系统误差F检验又叫方差齐性检验,首先得进行F检验,则用t检验,则用变种的t&#39
提问者评价
来自团队:
其他类似问题
为您推荐:
t检验的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁后使用快捷导航没有帐号?
查看: 3806|回复: 3
怎么用R语言判断两组数据存在显著差异呢?
高级会员, 积分 831, 距离下一级还需 169 积分
论坛徽章:1
给定两组数据,如 c1&-c(2, 4, 3, 2, 4, 7, 7, 2, 2, 5, 4); c2&-c(5, 6, 8, 5, 10, 7, 12, 12, 6, 6);
如何判断这两组数据在0.05的水平下是否存在显著性差异呢?
另外,薛毅的书习题3.5需要判断三组数据中是否存在显著差异,这里的显著差异是指直观上的差异显著,还是统计学上的显著性差异?
论坛徽章:5
假设检验吧,设置信区间为95%
论坛徽章:21
个人认为根据3.5题的意思,是让你通过箱线图来判断 3组数据是否有无显著性差异
如果通过R的方法:(我不是很懂,下面可能会有错误,欢迎拍砖)
x1=c(2,4,3,2,4,7,7,2,2,5,4)
x2=c(5,6,8,5,10,7,12,12,6,6)
x3=c(7,11,6,6,7,9,5,5,10,6,3,10)
先分别对两组样本进行显著性差异检验
(前提是,这两组样本的方差一定要足够相似。如果这两个样本的方差不相似,我们就需要用其他的比较方法来代替双样品检验。--我不清楚如果方差不相似,要用别的什么方法检验)
--判断方差
[1] 3.563636
[1] 7.344444
& var.test(x1,x2)
& & F test to compare two variances
data:&&x1 and x2
F = 0.4852, num df = 10, denom df = 9, p-value = 0.2753
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0..8336103
sample estimates:
ratio of variances
& && && &0.4852152
从方差相似性的检验中,我们可以看到p-value是0.2753,即p-value大于0.05,数据中没足够证据证明方差不相似。
即两组样品的方差是相似的
显著性检验
& t.test(x1,x2,var.equal=TRUE,paired=F)
& & Two Sample t-test
data:&&x1 and x2
t = -3.8394, df = 19, p-value = 0.001106
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-5..765657
sample estimates:
mean of x mean of y
经过R语言进行双样本检验,结果是x1平均存活天数为3.818182,x2平均存活天数是7.700000。p-value=0.001106,也就是小于0.05的。
这足够说明两个样本平均存活天数显著的不相似。
再以x2,与x3比较
[1] 7.344444
[1] 5.901515
& var.test(x2,x3)
& & F test to compare two variances
data:&&x2 and x3
F = 1.2445, num df = 9, denom df = 11, p-value = 0.7204
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0..8685825
sample estimates:
ratio of variances
& && && & 1.244501
从方差相似性的检验中,我们可以看到p-value是0.7204,即p-value大于0.05,数据中没足够证据证明方差不相似。
即两组样品x2与x3的方差是相似的
& t.test(x2,x3,var.equal=TRUE,paired=F)
& & Two Sample t-test
data:&&x2 and x3
t = 0.5627, df = 20, p-value = 0.5799
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-1..902664
sample estimates:
mean of x mean of y
经过R语言进行双样本检验,结果是x1平均存活天数为7.700000,x2平均存活天数是7.083333。p-value=0.5799,也就是大于0.05的。
这足够说明两个样本平均存活天数显著(在95%的至信区间)的相似。
三组样本比较
对多样品进行比较,统计学中叫做多样品比较,英文称作anova。如果多样品比较的结果小于0.05,则证明这些样品显著不相似。
反而言之,比较的结果大于0.05,则证明这些样品相似,近乎没区别。
对向量进行组合转矩阵
& d1=data.frame(t=rep(&a&,11),v=x1)
& d2=data.frame(t=rep(&b&,10),v=x2)
& d3=data.frame(t=rep(&c&,12),v=x3)
& dx=rbind(d1,d2,d3)
& dx=rbind(d1,d2,d3)
& x = aov(v~t,data=dx)
& summary(x)
& && && && &Df Sum Sq Mean Sq F value Pr(&F)& &
t& && && && &2&&94.26& &47.13& &8.484 0.0012 **
Residuals& &30 166.65& & 5.56& && && && && && &
Signif. codes:&&0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
多样品比较的结果p=0.0012小于0.05,则证明这些样品显著不相似
& print(model.tables(x,&means&),digits=3)
Tables of means
Grand mean
& && &&&a& & b& &&&c
& &&&3.82&&7.7&&7.08& &--平均值
rep 11.00 10.0 12.00
金牌会员, 积分 1912, 距离下一级还需 1088 积分
论坛徽章:5
不了峰 发表于
个人认为根据3.5题的意思,是让你通过箱线图来判断 3组数据是否有无显著性差异
如果通过R的方法:(我不是 ...
记下了,有时间研究研究苹果/安卓/wp
苹果/安卓/wp
积分 1898, 距离下一级还需 327 积分
权限: 自定义头衔, 签名中使用图片, 设置帖子权限, 隐身
道具: 彩虹炫, 雷达卡, 热点灯, 雷鸣之声, 涂鸦板, 金钱卡, 显身卡, 匿名卡, 抢沙发, 提升卡下一级可获得
权限: 设置回复可见道具: 沉默卡
购买后可立即获得
权限: 隐身
道具: 金钱卡, 雷鸣之声, 彩虹炫, 雷达卡, 涂鸦板, 热点灯
现在有五组数据,想知道五组数据是否存在显著性差异。
本来可以用单因素方差分析的,但是每组都不符合正太分布,shapiro.test得到的P值都小于0.05。
那么如何比较五组数据是否存在显著性差异?
请高手多多赐教。
载入中......
另外,简单一些考虑。如果这五组数据分别都服从威布尔分布,那么该如何检验五组数据(五种年龄毛竹的胸径数据)是否具有显著性差异呢?
非参数检验
最好的医生是自己,最好的药物是时间……
您的意思是:我可以使用Kolmogorov-Smirnov检验来检验五组中任何两组分布是否相同,即来源于同一总体。是不是这个意思呢?
我想应该是对的!
可以先进行变量转换,看是否符合正态分布。如果依然不满足建议使用秩和检验:
wilcox.test(x,y,exact=FALSE)
论坛好贴推荐
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
为做大做强论坛,本站接受风险投资商咨询,请联系(010-)
邮箱:service@pinggu.org
合作咨询电话:(010)
广告合作电话:(刘老师)
投诉电话:(010)
不良信息处理电话:(010)
京ICP证090565号
京公网安备号
论坛法律顾问:王进律师R语言的小个性-技术方案-@大数据资讯
你好,游客
R语言的小个性
来源:CSDN博客&
作者:EchoCaiCai
& & & 这篇文章用来记录我在学习使用R语言中遇到的一些区别于其他程序语言的小问题,以及一些解决方案。会持续记录下去。
& & & R语言的除法运算符与其他常见语言一致:/
& & & 但是取余运算符为:%%
& & & 除法运算取整除数:%/%
& & & 除法四舍五入:round()
& & & round()后面再带一个参数表明保留到第几位(为正数时是指保留几位小数,为负数时是指四舍五入到第几位)
& round(8/5)
& round(3.)
& round(3.0000,-2)
[1] 314200
& & & 2.& & &
list和data.frame的区别
& & & list和data.frame是R中处理表格数据常见的两种格式,另外还有matrix。
& & & 先说matrix,它必须保证所有的数据都是同一类型的。
& b &-matrix(c(1,1,1, 2,2,3, 1,3,4, 2,1,4), ncol=3, byrow=T)
[,1][,2] [,3]
[1,]& &1& & 1& & 1
[2,]& &2& & 2& & 3
[3,]& &1& & 3& & 4
[4,]& &2& & 1& & 4
& a &- matrix(c(1,1,"wo",2,2,3, 1,3,4, 2,1,4), ncol=3, byrow=T)
[,1][,2] [,3]
[1,] "1"& "1"&"wo"
[2,] "2"& "2"&"3"
[3,] "1"& "3"&"4"
[4,] "2"& "1"&"4"
[1] "character"
[1] "numeric"
& & & 可以看到a跟b的差异就是a中有个字符类型的数据&wo&,但是打印出来后,其他数值类型数据也被转换为了字符类型。
& & & 现在来看list和data.frame的差异,它们都可以包含不同类型的数据但是也有些差异。
差异1:部分数据查看及展示方式不同。list按列展示数据,data.frame按行展示。
& list &-list(a=c("hai","tian","xiang","jie","de"),b=c("di","fang","jiu","shi","wo"),c=c("qian"
,"gua","de","gu","xiang"))
[1] "hai"&
"tian"& "xiang" "jie"&
"fang" "jiu"& "shi"& "wo"&
[1] "qian"& "gua"&
"de"& & "gu"& & "xiang"
& dataframe
& & &a& & b& &
2& tianfang&
3 xiang&jiu& & de
4& jie& shi& & gu
& head(list,n=1)
[1] "hai"&
"tian"& "xiang" "jie"&
& head(dataframe,n=1)
& &a& b& & c
1 hai di qian
& & & 差异2:查看列名,对于list来说应该是查看行名(我的说法)是用names(),对于dataframe来说则是查看列名用colnames(),它还有查看行名rownames(),没有定义时,默认为1,2,3,4&&序列。
& names(list)
[1] "a" "b" "c"
& colnames(dataframe)
[1] "a" "b" "c"
& rownames(dataframe)
[1] "1" "2" "3""4" "5"
& & & 差异3:list可包含不同长度数据,dataframe必须每列包含相同长度数据,在list每行数据长度相同时,就可以使用as.data.frame()方法转换为data.frame类型。
& list2 &-list(a=1:5,b=1:4)
[1] 1 2 3 4 5
[1] 1 2 3 4
& dataframe2&- as.data.frame(list2)
Error in data.frame(a = 1:5, b =1:4, check.names = TRUE, stringsAsFactors = TRUE) :
&参数值意味着不同的行数: 5, 4
& list2 &-list(a=1:5,b=6:10)
[1] 1 2 3 4 5
[1]&6& 7& 8& 9 10
& dataframe2&- as.data.frame(list2)
& dataframe2
& & & 差异4:数据引用方式不同。都可以用$引用符号,但是[]引用和[[]]引用方式上有差异。
[1] "hai"&
"tian"& "xiang" "jie"&
& dataframe$a
[1] hai& tian& xiang jie&
Levels: de hai jie tian xiang
[1] "hai"&
"tian"& "xiang" "jie"&
& dataframe[1]
& list[[1]]
[1] "hai"&
"tian"& "xiang" "jie"&
& dataframe[[1]]
[1] hai& tian& xiang jie&
Levels: de hai jie tian xiang
& list[[2]][1]
& dataframe[[2]][1]
Levels: di fang jiu shi wo
& list[2,1]
Error in list[2, 1] : incorrectnumber of dimensions
& dataframe[2,1]
Levels: de hai jie tian xiang
& & & 差异5:data.frame有一个factor因子,在差异四中,查看dataframe的某一列或者某一项数据时,数据下面会有Levels的 内容,这个就是这一列的因子。相当于这一列的取值范围,有哪些唯一值。后面会讲到factor因子的来历以及作用,这里就不细说了。
& & & 3.& & &
删除某一行或者某一列的数据。
& & & 对list和dataframe都适用。删除行可以直接引用这一行并赋值为NULL,或者用-操作符号,具体实现过程如下示。
& list$a &-NULL
"fang" "jiu"& "shi"& "wo"&
[1] "qian"& "gua"&
"de"& & "gu"& & "xiang"
& list[-1]
"fang" "jiu"& "shi"& "wo"&
[1] "qian"& "gua"&
"de"& & "gu"& & "xiang"
[1] "hai"&
"tian"& "xiang" "jie"&
& list$a[-1]
[1] "tian"& "xiang" "jie"&
& list[-1,]
Error in list[-1, ] : incorrectnumber of dimensions
& list[,-1]
Error in list[, -1] : incorrectnumber of dimensions
& dataframe$a&- NULL
& dataframe
1& di& qian
2 fang& gua
3&jiu& & de
4& shi& & gu
& dataframe&- as.data.frame(list)
& dataframe[-1,]
& & &a& & b& &
2& tianfang&
3 xiang&jiu& & de
4& jie& shi& & gu
& dataframe &- as.data.frame(list)
& dataframe[,-1]
1& di& qian
2 fang& gua
3&jiu& & de
4&shi& & gu
& dataframe$b
[1] di& fang jiu& shi& wo&
Levels: di fang jiu shi wo
& dataframe$b[-2]
[1] di&jiu shi wo
Levels: di fang jiu shi wo
& & & Matrix也可用类似的操作来删除某行某列的数据,还可以一次删除多个行多列或者多个值。
& dataframe$c
[1] qian&gua&
de& & gu& &xiang
Levels: de gu gua qian xiang
& dataframe$c[c(-1,-3,-5)]
[1] gua gu
Levels: de gu gua qian xiang
& & & 4.& & & 读取数据。
& & & 主要是为了讲read.table()和read.csv()方法的一些小细节。数据读入后都被存为data.frame的类型。
& & & 编码:read.csv()默认读取中文的格式是gbk格式的,无法设置。如果你的读入文件中文编码格式是 UTF-8格式,使用read.csv就会出现乱码。但是read.table()方法默认读取UTF-8格式中文,并且包含encoding参数,可以 设置读取数据的编码格式。
& & & 表头:read.csv()默认是含有表头的也就是header=T,read.table()默认没有表头header=F。
& & & 因子:read.csv()和read.table()两个方法都有stringsAsFactors参数,默 认为TRUE。如果你不设置的话,数据读入时,每一列字符型的数据都按因子方式存储。如下面例子,fruit列被转换成了因子,数据被转换成了 1,1,3,4,2,这几个数值1-4按顺序分别对应着Levels:苹果葡萄 香蕉 柚子。但是我们查看这一列数据时,显示的还是字符型数据。
& fruitprice
1& 苹果&5.98
2& 苹果&3.50
3& 香蕉&4.50
4& 柚子&4.80
5& 葡萄&8.70
& test$fruit
[1] 苹果苹果香蕉柚子葡萄
& & & Levels: 苹果葡萄香蕉柚子
& & & 从clipboard上读入数据:见上一个列子中,我们能直接从clipboard上读取数据,先在Excel上选中需要读入的数据区域,右键复制,再执行read.table("clipboard")语句即可。
& test &-read.table("clipboard",header=T)
& fruitprice
1& 苹果&5.98
2& 苹果&3.50
3& 香蕉&4.50
4& 柚子&4.80
5& 葡萄&8.70
& & & 5.& & &
两表合并的方法
& & & 这里是两个表类似MySQL中join的方法&&merge(),默认根据两个表相同列名相交。方法的介绍见链接:http://my.oschina.net/u/1791586/blog/337054,里面有很详细的方法说明。想说明的是参数all/x.all/y.all,这三个参数取值T/F,用来定义是否取两个数据框x或者y的所有列。效果分别类似join的全连接,左连接,右连接。就不另外举例子了,参考链接里有很好的例子。
& & & 6.& & &
查看数据。
& & & View()可以查看list、vector、dataframe数据,但是在Rstudio中,用View()查看时会有中文乱码。不过mac和 Linux平台上不存在这个问题,只用Windows平台上才有,好像没看到有什么设置Rstudio的方式可以避免这个的中文乱码。R中不存在乱码的问 题。
& & & fix()也可以查看list、vector、dataframe数据。
& & & 区别在于fix()方法可以查看列所包含的字段数不同的list的内容。View()只能查看整齐的数据,就是行列数都相同时的数据。另外fix()方法是查看数据,打开数据编辑框,并能够在其中修改数据。View()方法只是单纯的查看数据。
& test &-list(a=c("a","b","c","d"),b=1:4)
& View(test)
& fix(test)
& fix(dataframe)
& & & 7.& & &
R语言的数据类型查看mode()/class()/typeof()
& & & 没有找到一个很细致的说明,只能根据我自己的大概理解来看,可能会有误,欢迎指正。这三个函数都是能够查看数据类型的函数。但是有些小细节的差异。
& & & R语言中,所有的数据、对象、方法、语句都可以查看mode(),主要的mode类型有:complex、raw、character、list、expression、name、symbol、function,mode可以说是大的类型。
& & & 所有对象都有typeof属性和class属性,但是相比class而言,typeof更细致。
&x &- c(1,2,3,4,5)
[1]"numeric"
& class(x)
[1]"numeric"
& typeof(x)
[1] "double"
转载请注明来源,谢谢!http://blog.csdn.net/cl/article/details/
相关新闻 & & &
& (07月31日)
& (07月08日)
& (06月29日)
& (07月30日)
& (06月30日)
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款}

我要回帖

更多关于 东西干湿差异显著 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信