zoukankan      html  css  js  c++  java
  • R语言实战 第7章


    # 01 描述性统计分析 --------------------------------------------------------------
    #针对总体的
    mycavs = mtcars[,c(1,4,6)]
    names(mtcars)
    #"mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear" "carb"
    #关注的焦点没加仑汽车行驶的mpg 英里数 hp 马力 wt车重
    summary(mycavs)

    library(psych)
    describe(mycavs)
    detach(psych)
    #针对分组的
    aggregate(mycavs,by=list(mtcars$am),mean)
    #可以调用的函数只有平均数、标准差这样的单返回值函数

    describeBy(mycavs,list(mtcars$am))
    ##多个分组的话就是 list(name1=groupvar1,name2=groupvar2....)

    #分类跟分类的频数表
    #一维
    library(vcd)
    names(Arthritis)
    sapply(head(Arthritis),class)
    ##"ID" "Treatment" "Sex" "Age" "Improved"
    #一项风湿性关节炎新疗法的双盲临床实验

    mytable = table(Arthritis$Improved)
    mytable
    #None Some Marked
    #42 14 28

    prop.table(mytable) ##转换成比例
    prop.table(mytable)*100 ##转换成百分比
    #二维
    table(Arthritis$Improved,Arthritis$Treatment)
    xtabs(~Treatment+Improved,data =Arthritis ) ->mytable
    # Improved
    #Treatment None Some Marked
    #Placebo 29 7 7
    #Treated 13 7 21
    prop.table(mytable,1) ##转换成行比例
    prop.table(mytable,2) ##转换成列比例

    ##多维度
    table(Arthritis$Improved,Arthritis$Treatment,Arthritis$Sex)
    xtabs(~Treatment+Improved+Sex,data =Arthritis ) ->mytable
    ftable(mytable)
    ##ftable,让三维分组更加紧凑
    ftable(prop.table(mytable,c(1,2)))


    # 02 独立性检验 ----------------------------------------------------------------
    #H0数据独立 数据之间没什么关系
    mytabls = xtabs(~Treatment+Improved,data =Arthritis )
    chisq.test(mytabls)
    #p-value = 0.001463 数据之间不独立,存在关系

    mytabls = xtabs(~Sex+Improved,data =Arthritis )
    chisq.test(mytabls)
    #p-value = 0.08889 数据之间独立,不存在什么关系

    fisher.test(mytabls)
    ##fisher.test Fisher精确检验,比chisq.test更加严谨一点

    xtabs(~Treatment+Improved+Sex,data =Arthritis ) ->mytable
    mantelhaen.test(mytable)
    ##H0 两个名义变量在第三个变量中的每一层都是条件独立
    # p-value = 0.0006647 结果表明患者接受的治疗得到的改善在性别的每一水平并不独立


    # 03 相关性的度量 ---------------------------------------------------------------
    #二维列联表的相关

    mytabls = xtabs(~Treatment+Improved,data =Arthritis )
    assocstats(mytabls)


    colnames(state.x77)
    #[1] "Population" "Income" "Illiteracy" "Life Exp" "Murder" "HS Grad"
    [7] "Frost" "Area"

    state = state.x77[,1:6]

    cov(state)
    ##协方差

    cor(state)
    #采用皮尔逊的相关系数
    ##function (x, y = NULL, use = "everything", method = c("pearson",
    "kendall", "spearman"))

    #偏相关
    library(ggm)
    colnames(state)
    #[1] "Population" "Income" "Illiteracy" "Life Exp" "Murder" "HS Grad"
    pcor(c(1,5,2,3,6),state)


    # 04 相关显著性的检验 -------------------------------------------------------------

    cor.test(state[,3],state[,5])
    #H0 不相关

    cor.test(state[,1],state[,6])

    #cor.test只能是一个一个的对其进行显著性检验

    ##corr.test 一个进行矩阵的相关
    library(psych)
    corr.test(state)
    ##人口跟高中毕业是相关系数是-0.1 ,但是不能拒绝显著性为0

    pcor(c(1,5,2,3,6),state)->r
    c(1,5,2,3,6)->q
    pcor.test(r,q,state)

    # 05 t检验 ------------------------------------------------------------------
    ##服从正态分布的 独立两组、不独立两组、多组
    ##不服从正态分的 两组 多组的 均值比较
    ## HO 都是均值相等 独立
    install.packages("MASS")

  • 相关阅读:
    CodeForces 731A Night at the Museum
    nyoj914 Yougth的最大化
    addEventListener或attachEvent都可以用bind代替
    答疑
    js判断是pc还是手机
    js实现xml转json和json转xml
    js实现xml转json
    margin重叠的解决办法
    去除移动端按钮点击时的阴影和rem标签垂直居中
    关于fiddler https 客户端 抓包配置
  • 原文地址:https://www.cnblogs.com/hero799/p/12024970.html
Copyright © 2011-2022 走看看