R语言差异检验:t检验「建议收藏」

R语言差异检验:t检验「建议收藏」文章目录@[toc]单样本t检验适用条件具体计算公式R语言示例独立样本t检验适用条件具体计算公式R语言示例配对样本t检验适用条件具体计算公式R语言示例t检验(studentt检验)是应用t分布的特征,将t作为检验的统计量来进行统计推断方法。它对样本要求较小(例如n<30)。主要用途:样本均数与总体均数的差异比较两样本均数的差异比较分类:单样本t检验独立样本t检验配对样本t…

大家好,又见面了,我是你们的朋友全栈君。


t检验(student t检验)是应用t分布的特征,将t作为检验的统计量来进行统计推断方法。它对样本要求较小(例如n<30)。

主要用途:

  • 样本均数与总体均数的差异比较
  • 两样本均数的差异比较

分类:

  • 单样本t检验
  • 独立样本t检验
  • 配对样本t检验

单样本t检验

单样本t检验主要用于判断样本均数与总体均数是否存在显著差异。

适用条件

  • 已知一个总体均数
  • 已知一个样本均数及该样本标准差
  • 样本正态分布或近似正态总体

实际应用中,当数据量足够大时,对样本正态分布要求不再严格。只要数据分布不是严重偏态,一般来说单样本t检验都是适用的。

具体计算公式

t = x ˉ − μ 0 s / n t=\frac{\bar{x}-μ_0}{s/\sqrt{n}} t=s/n
xˉμ0

自 由 度 d f = n − 1 自由度df=n-1 df=n1
其中, x ˉ \bar{x} xˉ为样本均数、 μ 0 \mu_0 μ0为总体均数, s s s为样本标准偏差、 n n n为样本数。该统计量t在原假设 μ = μ 0 \mu=\mu_0 μ=μ0为真的条件下服从自由度为 n − 1 n-1 n1的t分布。

R语言示例

R语言中可以用t.test函数进行t检验

(虚构)从某小学六年级抽取10名学生,其身高(单位:cm),是否认为该学校六年级平均身高130cm?

10名学生身高:
130,120,130,110,130,135,129,124,130,134

#生成数据
x <- c(130,120,130,110,130,135,129,124,130,134)
#t检验
t.test(x,mu = 130)

	One Sample t-test

data:  x
t = -1.1884, df = 9, p-value =
0.2651
alternative hypothesis: true mean is not equal to 130
95 percent confidence interval:
 121.8702 132.5298
sample estimates:
mean of x 
    127.2 
#结果显示,P=0.2651>0.05。在统计学上说明样本均数与总体均数没有差别。

独立样本t检验

独立样本t检验主要检验两个样本均数及其所代表的总体之间差异是否显著。

适用条件

  • 独立性,各观察值之间相关独立
  • 正态性,各样本均来自正态分布的总体
  • 方差齐性,各样本所在总体的方差相等

具体计算公式

  • 方差齐性条件下下
    s c 2 = s 1 2 ( n 1 − 1 ) + s 2 2 ( n 2 − 1 ) n 1 + n 2 − 2 s_c^2=\frac{s_1^2(n_1-1)+s_2^2(n_2-1)}{n_1+n_2-2} sc2=n1+n22s12(n11)+s22(n21)
    t = x 1 ˉ − x 2 ˉ s x 1 ˉ − x 2 ˉ = x 1 ˉ − x 2 ˉ s c 2 ( 1 / n 1 + 1 / n 2 ) t=\frac{\bar{x_1}-\bar{x_2}}{s_{\bar{x_1}-\bar{x_2}}}=\frac{\bar{x_1}-\bar{x_2}}{\sqrt{s_c^2(1/n_1+1/n_2)}} t=sx1ˉx2ˉx1ˉx2ˉ=sc2(1/n1+1/n2)
    x1ˉx2ˉ

    v = ( n 1 − 1 ) + ( n 2 − 1 ) = n 1 + n 2 − 2 v=(n_1-1)+(n_2-1)=n_1+n_2-2 v=(n11)+(n21)=n1+n22
    其中, v v v为自由度
  • 方差不齐条件下
    t ’ = x 1 ˉ − x 2 ˉ S 1 2 n 1 + S 2 2 n 2 t^{’}=\frac{\bar{x_1}-\bar{x_2}}{\sqrt{
    {\frac{S_1^2}{n_1}}+{\frac{S_2^2}{n_2}}}}
    t=n1S12+n2S22
    x1ˉx2ˉ

    v = ( S 1 2 / n 1 + S 2 2 / n 2 ) 2 ( S 1 2 / n 1 ) 2 n 1 − 1 + ( S 2 2 / n 2 ) 2 n 2 − 1 v=\frac{
    {(S_1^2/n_1+S_2^2/n_2)^2}}{
    {\frac{(S_1^2/n_1)^2}{n_1-1}}+{\frac{(S_2^2/n_2)^2}{n_2-1}}}
    v=n11(S12/n1)2+n21(S22/n2)2(S12/n1+S22/n2)2

R语言示例

独立样本t检验需要检验其适用条件,主要是指方差齐性,其他条件:样本独立性一般数据可以保障。t检验对样本正态性具有一定耐受性。

方差齐性可以用car包leveneTest函数检验

leveneTest(y=,group =)

其中,y是两组样本组成的数据,group是两组样本的分组情况。

方差齐性检验之后,才可进行独立样本t检验。

用t.test(A,B,var.equal=TRUE,paired=FALSE)

AB为数据集,var.equal=TRUE为方差齐性。paired=FALSE非配对样本。

示例:

(虚构)有两组学生(每组10人),一组采用传统教育,一组采用素质教育。一学期后,两组学生语文成绩(满分100)如下。问两组学生成绩之间差别是否显著。

  • 传统组A
    85,84,95,73,77,65,85,93,90,91
  • 素质组B
    87,96,77,80,79,96,93,82,84,86
A <- c(85,84,95,73,77,65,85,93,90,91)
B <- c(87,96,77,80,79,96,93,82,84,86)
#方差齐性检验
#合并数据
y <- c(A,B)
#数据分组标签
group=as.factor(c(rep(1,10),rep(2,10)))
#载入car包
library(car)
#方差齐性检验
leveneTest(y=y,group = group)
#结果显示,P=0.5505>0.05。说明方差齐性。
Levene's Test for Homogeneity of Variance (center = median)
      Df F value Pr(>F)
group  1  0.3703 0.5505
      18  
#独立样本t检验
t.test(A,B,paired = FALSE)
#结果显示P=0.5639。说明两者没有区别。
	Welch Two Sample t-test

data:  A and B
t = -0.589, df = 16.463, p-value = 0.5639
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -10.100024   5.700024
sample estimates:
mean of x mean of y 
     83.8      86.0 

配对样本t检验

配对样本t检验同样检验两个样本均数及其所代表的总体之间差异是否显著。

独立样本t检验与配对样本t检验同属于双样本t检验,不同点在于配对样本t检验要求两个样本之间存在某些配对关系。

常见配对关系:

  • 同一样本两种不同处理方法的检验结果
  • 同一样本前后时间点的检验结果

适用条件

  • 正态性

具体计算公式

t = d ˉ − 0 s x ˉ = d ˉ s / n t=\frac{\bar{d}-0}{s_{\bar{x}}}=\frac{\bar{d}}{s/\sqrt{n}} t=sxˉdˉ0=s/n
dˉ

d f = n − 1 ( n 为 配 对 数 目 ) df=n-1(n为配对数目) df=n1(n)

R语言示例

配对样本t检验用t.test函数完成。

t.test(x,y,paired=TRUE)

其中,xy为数据,paired=TRUE是配对数据

示例:
有20名女性分为10对,试吃两种药。经过一段时间后,药效如下。问两种药是否有区别

  • 药1

4.4,5,5.8,4.6,4.9,4.8,6,5.9,4.3,5.1

  • 药2

6.2,5.2,5.5,5,4.4,5.4,5,6.4,5.8,6.2

#生成数据
drug1 <- c(4.4,5,5.8,4.6,4.9,4.8,6,5.9,4.3,5.1)
drug2 <- c(6.2,5.2,5.5,5,4.4,5.4,5,6.4,5.8,6.2)
#配对样本t检验
t.test(drug1,drug2,paired = TRUE)
#结果显示,P=0.1575>0.05,不能说两者存在显著差别。
	Paired t-test

data:  drug1 and drug2
t = -1.5417, df = 9, p-value = 0.1575
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -1.0609306  0.2009306
sample estimates:
mean of the differences 
                  -0.43 


R 语 言 小 白 速 通 R语言小白速通 R
懂 点 R 语 言 懂点R语言 R
欢 迎 分 享 收 藏 关 注 欢迎分享收藏关注

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/150919.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 基础SQL语句学习

    基础SQL语句学习最近老发牢骚,写了一些跟技术无关的东西,有点跑题了。以后还是注意多写技术性的东西。不知道有没有同学跟我一样,我一开始学sql语句的时候就觉得这个东西很无趣,不爱学,而且当时不知道从哪了解到数据库管理员都是一些年纪比较大的程序员在做。那时候觉得会WIN32,会编写算法,会设计模式很牛,都是一些看的见摸得着的东西,做起来很hight。反过来,操作数据库,这些都是别人给你做好了的,底层你都不了解

  • 讲解java源码_Java学习之Java源码讲解「建议收藏」

    讲解java源码_Java学习之Java源码讲解「建议收藏」关于Java中源码的学习,是不少同学头疼的知识点。本文整理了JAVA源码学习的八大要点,分别是基础知识、面向对象、异常处理、集合、综合类核心代码、JAVA8新特性、Input/Output和Java小实例。一、基础知识1.宏观上理解Java的本质2.JVM的原理3.Java变量4.Java数据类型5.Java运算符6.Java判断语句if-else7.Java循环语句switch-case\for…

  • SQLyog客户端无法连接mysql「建议收藏」

    SQLyog客户端无法连接mysql「建议收藏」忘记截图了,只能描述下报错信息:Host ‘服务器地址’ is not allowed to connect to this MySQL server解决方法:添加用户权限1.登录服务端mysql2.在mysql输入命令GRANT ALL PRIVILEGES ON *.* TO ‘root’@’IP地址’ IDENTIFIED BY ‘你设置的密码’ WITH GRANT O…

  • STL库基础学习

    STL库基础学习目录1.什么是STL库2.几种常见的STL模板(1)vector1.vector向量模板2.vector迭代器3.常见方法与用法(2)list(3)queue和stack(4)set和map3.几种STL的时间复杂度比较1.什么是STL库◦STL又称为标准模板库,是一套功能强大的C++模板类,提供了通用的模板类和函数,这些模板类和函数可以实现多种流行和常用的算法和数据结构,如向量、链表、队列、栈。◦也就是说,有了STL,数据结…

    2022年10月15日
  • goland的激活码_通用破解码

    goland的激活码_通用破解码,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • idea查看激活码(JetBrains全家桶)

    (idea查看激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.htmlHFFWNFD5GX-eyJsaWNlbnNlSWQi…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号