精华内容
下载资源
问答
  • 基于R语言aov通用批量分析

    千次阅读 2020-03-16 16:47:47
    之前的博文for循环与plyr包执行方差分析及其多重比较的批量分析里提到使用两种方法进行aov批量分析,但局限是...// aov batch in R aov.batch <- function(df,mod,nf,alpha=.05) { library(agricolae) res...

    之前的博文for循环与plyr包执行方差分析及其多重比较的批量分析里提到使用两种方法进行aov批量分析,但局限是方差分析模型是固定的,那么有没有办法将其改为通用型函数。

    答案是当然可以!

    1 首先改写通用函数

    // aov batch in R
    aov.batch <- function(df,mod,nf=NULL,alpha=.05) {
      library(agricolae)
      
      res<-list()
      fit<-aov(mod,data=df) 
      aov.res<-summary(fit) # list
      
      res1<-list()
        if(is.null(nf)) {
        tt<-as.character(mod[[3]])
        fn<-tt[tt!="+"]
        nf<-length(fn)
      } else{
        fn<-names(df)[nf]
        nf<-length(fn)
      }
      
      for(j in 1:nf){
        res1[[j]]<-duncan.test(fit,fn[j],alpha=.05)$groups
      }
      names(res1)<-fn
      
      res<-list(aov.res,res1)
      names(res)<-c('aov','comp1')
      res
    }
    
    aovr.print<-function(res,idx){
      print(res[idx])
    }
    

    请注意:暂时不能处理因子互作的多重比较。

    2 运行示例

    // 指定具体的方差分析模型
    aov1.batch<-function(df,mod=y~Clone+Treat){
      res<-aov.batch(df,mod=mod)
      res
    }
    # 数据重构
    dat1 <- tidyr::gather(dat,key=Trait,y,-c(1:3))
    aov.res <- plyr::dlply(dat1,"Trait",aov1.batch)
    

    示例数据:

    > head(dat[,1:6])
      Clone Treat Rep    EC      RWC       RWD
    1     1     1   1 17.25 88.43537 11.564626
    2     2     1   1 16.88 92.36111  7.638889
    3     3     1   1 20.05 81.14754 18.852459
    4     4     1   1 23.14 62.90323 37.096774
    5     5     1   1 24.06 85.32110 14.678899
    6     6     1   1 15.98 65.00000 35.000000
    

    3 查看结果

    > idx<-names(aov.res)
    > aovr.print(aov.res,idx)
    All aov results are as following:
    EC :
    $`aov`
                Df Sum Sq Mean Sq F value Pr(>F)    
    Clone        8   5269     659   55.45 <2e-16 ***
    Treat        3  17594    5865  493.75 <2e-16 ***
    Residuals   96   1140      12                   
    ---
    Signif. codes:  0***0.001**0.01*0.05.0.1 ‘ ’ 1
    
    $comp1
    $comp1$`Clone`
            y groups
    5 48.6575      a
    4 44.0475      b
    9 40.9050      c
    3 36.9675      d
    1 35.2275      d
    2 32.1100      e
    7 29.6600     ef
    8 29.1475     fg
    6 26.7125      g
    
    $comp1$Treat
             y groups
    4 53.53111      a
    3 41.11333      b
    2 29.84556      c
    1 19.25889      d
    ...
    

    到此,演示结束。
    通用函数aov.batch编写后,不能直接使用,需要再次生产另一个专用函数aov1.batch,后续的程序才能运行。

    展开全文
  • R语言

    2019-11-26 20:31:07
    随着大数据的概念变得...R语言作为功能强大并且免费的数据挖掘工具,在数据挖掘领域获得了越来越多用户的青睐。近几年,中国R语言大会在越来越多的城市举行,参会人数也呈现爆发式增长,尤其是业界人士占据了相...

    随着大数据的概念变得越来越流行,对数据的探索、分析和挖掘已经成为大数据分析领域的基本技能之一。作为探索和分析数据的基本理论和工具,利用科学的数据挖掘技术进行数据预处理和借助成熟的数据挖掘算法进行模型拟合成为时下的热门技术之一。R语言作为功能强大并且免费的数据挖掘工具,在数据挖掘领域获得了越来越多用户的青睐。近几年,中国R语言大会在越来越多的城市举行,参会人数也呈现爆发式增长,尤其是业界人士占据了相当大的比例,R语言已成为企业界做数据分析挖掘必备的利器之一。

    邓一硕写过一篇文章“R语言书籍的学习路线图”,很有参考意义,初级入门、高级入门、绘图与可视化、计量经济学、时间序列分析与金融等内容,涉及到30多本R语言书籍和小册子,但大部分都是英文的。
    引用CSDN前辈的地址:https://blog.csdn.net/faith_binyang/article/details/79584655

    CSDN上有两集免费的短介绍视频,其中推荐了一些学习方法:
    中文书籍推荐:
    在这里插入图片描述
    R语言社区

    R语言博客
    在这里插入图片描述
    操作:
    养成好的习惯,首先更改目录。getwd()获得当前目录,setwd(" ")设定新的目录。
    注释符号:#。
    语句后面加分号(;)和MATLAB里面一样,是不显示该执行结果的意思。向上光标也是找回上一命令的意思。R中用(NA)表示缺失值。R中区分大小写,变量命名是用(字母、数字、句点)。寻求帮助用(?+函数名称)。
    调用程序包:library(MASS以MASS为例)。
    R中的与运算是(&)、或运算是(|)、非运算是(!)。
    常见统计函数如下:
    在这里插入图片描述

    矩阵与数组:矩阵是特殊的数组。
    矩阵:matrix;数组:array。
    访问向量:x[i];访问矩阵A[i,j]。
    函数matrix( )用来创建矩阵。默认按列排列。矩阵的±*/^都是对其中各个元素。
    函数array()用来创建数组。

    数据的读写
    read.table():读表格形式的文件。
    scan()读纯文本格式文件。
    绘图
    (1)高级绘图函数,创建一个新的图形,表2.6。
    (2)低级绘图函数,在现存的图形上添加元素,表2.6。
    在这里插入图片描述
    在这里插入图片描述
    箱形图:
    在这里插入图片描述
    参数检验与非参数检验
    参数假设检验:事先假定总体的分布类型已知且都认为服从正态分布。
    非参数检验:泛指“对分布类型已知的统计进行参数检验”之外的所有检验方法,对总体的分布进行假设,又叫拟合优度检验。
    以下是非参数检验的几个方法:
    (1)卡方检验(Chi-Square Test):用于检验样本数据是否与某种概率分布的理论数值相符合,进而推断样本数据是否来自该分布的样本的问题。(原假设是不存在显著差异。概率p值小于显著水平α,拒绝原假设,即样本所属总体的分布与指定的理论分布存在显著差异;概率p值大于显著水平α,成立原假设,即样本所属总体的分布与指定的理论分布无显著差异;α一般为0.05)。R语言函数chisq.test()。
    (2)K-S检验:可利用样本数据推断总体是否服从某一理论分布。(原假设是不存在显著差异。概率p值小于显著水平α,拒绝原假设,即样本所属总体的分布与指定的理论分布存在显著差异;概率p值大于显著水平α,成立原假设,即样本所属总体的分布与指定的理论分布无显著差异;α一般为0.05)R语言函数ks.test()。
    (3)正态性的图检验:检验总体是否为正态分布。(因为很多统计方法中都假定样本来自正态总体,所以正态检验就很重要。原假设是…服从正态分布)QQ图法,qqnorm( );qqline( )。

    关联性检验
    考察两个变量之间是否存在关系,例如研究肺癌与吸烟的关系,称为独立性检验。
    1.卡方统计量,两个变量之间的相关程度。,观测值与期望值之间的接近程度,越接近,卡方值越小。
    2.列联表检验
    3.Fisher精确检验

    蒙特卡罗

    随机抽样方法,随机数的生成方法,利用蒙特卡罗方法解决积分问题,目前觉得这一部分我暂时用不到,所以暂时不整理。
    第六章随机模拟实验、第七章随机过程计算与仿真也不整理。

    方差分析与试验设计

    在这里插入图片描述

    单因素方差分析

    在一项实验中,让一个因素的水平发生变化,其他因素水平保持不变,叫做单因素试验。处理单因素试验的统计推断问题称为单因素方差分析。
    在这里插入图片描述
    在这里插入图片描述
    R语言中函数aov()进行方差分析。函数summary()可以列出方差分析表的详细结果。aov()进行方差分析时需要进行正态性检验和方差一致性检验:命令shapiro.test()是正态性检验,适用于样本容量n小于等于50时;命令bartlett.test()是方差一致性检验。
    另外,levene.test()可以进行方差分析,适用于正态分布或非正态分布或分布不明的数据。
    方差分析后的多重比较,就是进行方差分析得知了因子之间存在差异,想要知道具体哪些因子间存在差异,命令pairwise.t.test()。

    两因素等重复试验的方差分析

    在这里插入图片描述

    回归分析

    在这里插入图片描述
    变量间的统计关系:在统计推断中,把具有密切关系,但又不能由某一个或某一些变量唯一确定另外一个变量的关系,称为变量之间的统计关系或相关关系
    关于这个“统计关系”,现代统计学已经形成两个重要分支:相关关系回归分析
    在这里插入图片描述
    1.散点图:可以反映两个变量之间是否具有相关性,但不能体现相关强度。
    2.相关系数:可以反映相关强度。叫做线性相关系数或Pearson相关系数。
    多元线性回归分析:R^2。
    在这里插入图片描述

    展开全文
  • R:aov和lm方差分析的区别

    千次阅读 2019-11-12 11:47:15
    R:aov和lm方差分析的区别 在R中经常会用aov()和lm()两个函数进行方差分析,aov 函数的内核使用了lm算法,但二者有一定的区别。 aov() 默认(summary) 结果是基于Type I 平方和,而 lm() 默认(summary)的结果是...

    R:aov和lm方差分析的区别


    在R中经常会用aov()和lm()两个函数进行方差分析,aov 函数的内核使用了lm算法,但二者有一定的区别。
    aov() 默认(summary) 结果是基于Type I 平方和,而 lm() 默认(summary)的结果是Type III平方和。aov()分析的结果受自变量输入顺序的影响,而lm()与自变量输入顺序无关。当然这种差异是针对非平衡数据而言。对于平衡全处理的数据结构,二者分析的结果是一致的。

    展开全文
  • R语言学习八

    2017-01-13 16:03:27
    aov()函数的语法为aov(formula,data=dataframe) 例如用y来代表因变量,用字母A,B,C来代表因子,则常用的一些符号表达式如下: 对应的结果如下: 双因素的ANOVA分析: T检验: 函数简介: ...

    方差

    aov()函数
    aov()函数的语法为aov(formula,data=dataframe)
    例如用y来代表因变量,用字母A,B,C来代表因子,则常用的一些符号表达式如下:
    这里写图片描述
    这里写图片描述
    对应的结果如下:
    这里写图片描述
    双因素的ANOVA分析:
    这里写图片描述
    T检验:
    这里写图片描述
    函数简介:
    这里写图片描述
    相关性:
    这里写图片描述
    这里写图片描述
    线性模型,一般使用pwr.f2.test()来完成相应的功效分析
    卡方检验:卡方检验主要用来评价两个类别型变量的关系,典型的零假设就是变量之间独立,备择假设是不独立,pwr.chisq.test() 函数可以用来评估卡方检验的功效、效应值和所需样本大小。格式为:
    pwr.chisq.test(w=,N=,df=,sig.level=,power=)
    其中,w是效应值,N是总样本大小,df是自由度。
    这里写图片描述
    统计检验有一些效应值基准,可以用于平时的参考:
    这里写图片描述
    下节将讲述绘图

    展开全文
  • 使用R语言进行单(双)因素...R语言中使用 aov() 函数 拟合 ANOVA模型, 结果和回归模型中 lm() 函数一样 aov()函数 R 表达式中常见的特殊符号: R 常见研究设计的表达式: 单因素ANOVA: y ~ A 协变量的单因素ANOV
  • R语言中的循环函数

    千次阅读 2018-12-25 22:14:38
    摘要: R语言中有几个常用的函数,可以按组对数据进行处理,apply, lapply, sapply, tapply, mapply,等。这几个函数功能有些类似,下面介绍下这几个函数的用法。 Apply 这是对一个Matrix或者Array进行某个维度的运算...
  • R语言之方差分析篇

    万次阅读 多人点赞 2014-06-14 17:11:51
    fit.aov<-aov(response~trt,data=cholesterol) summary(fit.aov) 用回归lm()来解决ANOVA问题 fit.lm(response~trt,data=cholesterol) summary(fit.lm) 因线性模型要求预测变量是数值型,当lm()函数...
  • 写在前言 关于方差分析(Analysis of Variance,ANOVA),知乎的大神们都已经科普过其概念,简单来说就是检验多组样本之间均值的差异。而重复测量方差分析,顾名思义... 随着R的使用越来越普遍,世界各地的研究者们...
  • R语言实现方差分析

    千次阅读 2020-03-23 21:42:45
    方差分析对数据的要求:满足正态性...用aov()函数进行方差分析,基本格式为: aov(formula, data=NULL, projections=FALSE, qr=TRUE, contrasts=NULL, …) 其中,formula为方差分析公式; data为数据框; pro...
  • 菜鸟学R语言(方差分析)

    千次阅读 2020-06-12 22:21:25
    之前我更多的是使用SPSS来操作,那么怎么用R语言来实现呢? 首先,我们先来看一下方差分析的前提假设: 样本数据独立 每组数据的总体服从正态分布 每组数据方差齐性 我的第一篇博客介绍了T检验,其前提假设也是...
  • 检验对象为响应(response),自变量为时间(time)、批次(batch)和配方(ingredients) mydata.aov.blk = aov(response ~ ingredients + time + batch) summary(mydata.aov.blk) > mydata.aov.blk = aov(response ~ ...
  • 一个小段自用的统计方法,在我写论文中得的到了不少的帮助。分享给大家。 统计使用的是r基础stat包,绘图使用的ggplot2包。都是很常见的,网上教程也很多。 library 'ggplot2' library 'si'
  • 这是一个非常典型的区组设计,可考虑随机区组设计的方差分析。随机区组设计的方差...此次笔记涉及到命令有read_excel{readxl}、lm {stats}、Anova {car}、aov {stats}等。 广告 协和保湿润肤3件套 协和美肤指南..
  • R语言实战笔记–第十二章 重抽样(置换检验)与自助法标签(空格分隔): R语言 重抽样 自助法 置换检验置换检验 双样本均值检验的时候,假设检验的方法就是,检查正态性、独立性、方差齐性,分别对应的参数非参数...
  • R语言】rpois函数参数详解

    千次阅读 2020-12-05 15:00:48
    想要了解更多可以去官方文档查看,链接。 rpois函数主要用于产生泊松分布的随机数,其中参数n代表产生数据个数,参数lambda表示产生一组数据的(非负)均值,具体如下: rpois(n, lambda) n:number of random ...
  • 下面我总结一下R语言如何对常用的方差分析进行操作。1. 方差分析的假定 上面这个思维导图,也可以看出,方差分析有三大假定:正态,独立和齐次,如果不满足,可以使用广义线性模型或者混合线性模型,或者广义线性...
  • R语言中的方差分析

    千次阅读 2016-02-24 09:25:10
    方差分析:当包含的因子是解释变量时,我们关注的重点通常会从预测转向组别差异的分析,这种分析法称作方差分析(ANOVA)。 install.packages(c('multcomp', 'gplots', 'car', 'HH', '...aov()函数的语法为aov(formul
  • R语言进行单因素方差分析

    万次阅读 2017-06-01 15:15:21
    mtcars.aov = aov(mtcars$mpg~factor(mtcars$gear)) summary(mtcars.aov) Df Sum Sq Mean Sq F value Pr(>F) factor(mtcars$gear) 2 483.2 241.62 10.9 0.000295 *** Residuals 29 642.8 22.17 --- Signif. ...
  • R语言 数理统计

    2021-09-11 14:07:44
    ***********双因素方差分析 R中的函数 aov(): 不考虑交互作用x~A+B,加号表示两个因素具有可加性; 考虑交互作用的方差分析模型x~A+B+A:B(等价于A*B) ***无交互 # 导入数据 juice ("juice.csv") # 转化为因子型...
  • 微信公众号:医学统计与R语言如果你觉得对你有帮助,欢迎转发输入1: setwd("C:\\Users\\mooshaa\\Desktop")rma rma$group rma[sample(nrow(rma),5,replace=F),]结果1: groupbeforemiddleafter输入2: library...
  • R语言做单因素方差分析及其结果呈现

    千次阅读 多人点赞 2020-02-23 21:02:32
    单因素方差分析及其结果呈现——R语言 一、数据录入 表1 不同药剂处理的种子发芽率(%) 重复 A B C 1 85 80 55 2 80 70 65 3 91 75 49 4 82 65 52 5 ...
  • 菜鸟学R语言(组间多重比较)

    千次阅读 2020-07-09 23:10:40
    菜鸟学R语言(组间多重比较) 经过方差分析可以说明各总体均值间的差异是否显著,即只能说明均值不全相等,但不能具体说明哪几个均值之间有显著差异。此时多重比较就派上用场了,在科研中也是比较常用的方法。 具体...
  • 这篇推文会分别介绍经常使用的差异显著性检验方法在R语言中的实现。方法选择差异显著性检验具有多种方法,分别针对不同的情况,我们要根据自身情况选择合适的方法进行分析。⚠️以上方法均为比较不同组数据见均值的...
  • R语言双因素方差分析

    2021-08-08 13:50:27
    R语言双因素方差分析 条件: 各个样本是相互独立的随机; 各个样本来自正态总体; 具有方差齐性; 用途: 检验两个或多样本均数间的差异有无统计学意义;注:本均数的比较可以采用 t检验或 F检验,两个...
  • R语言单因素方差分析(附代码)

    千次阅读 2021-03-24 10:08:30
    R代码求解 # 读入初始数据 X (0.014,0.015,0.017,0.011,0.012,0.013) #读初始数据进行处理 A (rep(1:2,c(3,3))) # 进行aov单因素方差分析 mouse.aov <- aov(X~A) # 查看aov结果 summary(mouse.aov) 结果解析 Df Sum...
  • R:aov和lm方差分析的区别 在R中经常会用aov()和lm()两个函数进行方差分析,aov 函数的内核使用了lm算法,但二者有一定的区别。 aov() 默认(summary) 结果是基于Type I 平方和,而 lm() 默认(summary)的结果是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 783
精华内容 313
关键字:

r语言aov