当前位置: 首页 > news >正文

R语言统计分析——功效分析2(t检验,ANOVA)

参考资料:R语言实战【第2版】

1、t检验

        对于t检验,pwr.t.test()函数提供了许多有用的功效分析选项,如下:

        pwr.t.test(n=,d=,sig.level=,power=,type=,alternative=)

其中,n为样本大小;

d为效应值,即标准化的均值之差。d=\frac{\mu_1-\mu_2}{\sigma}

sig.level表示显著性水平,默认为0.05;

power:为功效水平;

type指检验类型:双样本t检验("two.sample")、单样本t检验("one.sample")、配对t检验("paired"),默认为双样本t检验;

alternative:指统计检验是双侧检验("two.sided")还是单侧检验("less"或"greater"),默认为双侧检验。

        现在我们要进行一项看手机对驾驶反应时间的实验,假定将使用双尾独立样本t检验来比较两种情况下驾驶员的反应时间均值:

        如果我们根据过去的经验知道反应时间有1.25s的标准偏差,并认定反应时间1s的差距是巨大差异,那么在这个研究中,可设定要检验的效应值为d=1/1.25=0.8或更大。另外,如果差异存在,我们希望有90%的把握检测到它,由于随机变异性的存在,我们也希望有95%的把握不会误报差异显著。这时,对于该研究需要多少受试者呢?

# 加载pwr包
library(pwr)
# t检验功效分析
pwr.t.test(d=0.8,sig.level = 0.05,power=0.9,type="two.sample",alternative = "two.sided")

        结果表明:每组中沃恩需要34个受试者(共68人),这样才能保证有90%的把握检测到0.8的效应值,并且最多5%的可能性会报差异存在。

        下面变化一下问题:假定在比较这两种情况时,我们想检测到总体均值0.5个标准偏差的差异,并且将误报差异的几率限制在1%以内。此外,我们能获得的受试者只有40人。那么在该研究中,我们能检测到这么大总体均值差异的概率是多少?分析如下:

pwr.t.test(n=20,d=0.5,sig.level = 0.01,type="two.sample",alternative = "two.sided")

        结果表明:在0.01的先验显著性水平下,每组20个受试者(共40个),因变量的标准差为1.25s,有最多14%的可能性断言差值为0.625s或者不显著(d=0.5=0.625/1.25)。换句话来说,我们将有86%的可能性错过我们要寻找的效应值。因此,可以可能需要慎重考虑要投入到该研究中的时间和精力。

        当是不等样本的t检验时,可用函数:

pwr.r2n.test(n1=,n2=,d=,sig.level=,power=,alternative=)

2、方差分析

        pwr.anova.test()函数可以对平衡单因素方差分析进行功效分析。格式为:

pwr.anova.test(k=, n=, f=, sig.level=, power=)

其中,k是组的个数,n是各组中的样本大小。

        对于单因素方差分析,效应值通过f来衡量。f=\sqrt{\frac{\sum_{i=1}^{k}p_i\times(\mu_i-\mu)^2}{\sigma^2}}(其中,p_i=n_i/N,ni=组i的观测数目,N=总观测数目,μi=组i的均值,μ=总体均值,σ2=组内误差方差)

        现在对五个组做单因素方差分析,要达到0.8的功效,效应值为0.25,并选择0.05的显著性水平,计算各组需要的样本大小。代码如下:

# 加载pwr包
library(pwr)
# anova功效分析
pwr.anova.test(k=5,f=0.25,power=0.8,sig.level=0.05
)

        结果表明:总样本大小为5×39=195。注意,本例中需要估计在同方差时五个组的均值

http://www.lryc.cn/news/435843.html

相关文章:

  • android 侧滑返回上一界面备忘
  • golang学习笔记18——golang 访问 mysql 数据库全解析
  • 苹果账号登录后端验证两种方式 python2
  • FlinkCDC 3.2.0 新增优点 Pattern Replacement in routing rules
  • 《 C++ 修炼全景指南:六 》深入探索 C++ 标准库中的 stack 与 queue 容器适配器
  • 高级java每日一道面试题-2024年9月07日-JVM篇-说一下类加载的执行过程?
  • 笔试强训day09
  • 软件测试中的黑盒测试方法,包括其定义、目的及主要步骤。
  • Shell脚本计算π的近似值
  • 进程间通信之消息队列
  • 人生苦短我用Python 5-xlwings自动调整表格
  • 移动跨平台框架Flutter详细介绍和学习线路分享
  • 线性代数基础:向量、矩阵、张量及其在机器学习中的应用详解
  • Dockerfile中的RUN、CMD、ENTRYPOINT指令区别
  • css grid布局属性详解
  • Tranformer分布式特辑
  • 【Moveit2官方教程】使用 MoveIt Task Constructor (MTC) 框架来定义和执行一个机器人任务
  • 使用docker配置wordpress
  • JVM字节码
  • python访问mysql
  • Java工具插件
  • Class3——Esp32|Thonny——网络连接主机-wifi连接(源代码带教程)
  • 特效【生日视频制作】小车汽车黄金色版悍马车身AE模板修改文字软件生成器教程特效素材【AE模板】
  • 如何利用Java进行快速的足球大小球及亚盘数据处理与分析
  • 代码随想录打卡Day29
  • 图分类!!!
  • 高防IP是如何防御攻击
  • Kubernetes 系列 | k8s入门运维
  • yolov8+deepsort+botsort+bytetrack车辆检测和测速系统
  • 基于准静态自适应环型缓存器(QSARC)的taskBus万兆吞吐实现