R语言方法总结.docx

上传人:b****3 文档编号:2225552 上传时间:2022-10-28 格式:DOCX 页数:19 大小:351.76KB
下载 相关 举报
R语言方法总结.docx_第1页
第1页 / 共19页
R语言方法总结.docx_第2页
第2页 / 共19页
R语言方法总结.docx_第3页
第3页 / 共19页
R语言方法总结.docx_第4页
第4页 / 共19页
R语言方法总结.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

R语言方法总结.docx

《R语言方法总结.docx》由会员分享,可在线阅读,更多相关《R语言方法总结.docx(19页珍藏版)》请在冰豆网上搜索。

R语言方法总结.docx

R语言方法总结

R语言方法总结

计算描述性统计量:

1、summary():

例:

summary(mtcars[vars])

summary()函数提供了最小值、最大值、四分位数和数值型变量的均值,以及因子向量和逻

辑型向量的频数统计。

2、apply()函数或sapply()函数

计算所选择的任意描述性统计量。

mean、sd、var、min、max、median、length、range

和quantile。

函数fivenum()可返回图基五数总括(Tukey’sfive-numbersummary,即最小值、

下四分位数、中位数、上四分位数和最大值)。

sapply()

例:

mystats<-function(x,na.omit=FALSE){

if(na.omit)

x<-x[!

is.na(x)]

m<-mean(x)

n<-length(x)

s<-sd(x)

skew<-sum((x-m)^3/s^3)/n

例:

dstats<-function(x)(c(mean=mean(x),sd=sd(x)))

by(mtcars[vars],mtcars$am,dstats)

by(mtcars[,vars],mtcars$am,plyr:

:

colwis(dstats))

3、summaryBy():

doBy包

例library(doBy)

summaryBy(mpg+hp+wt~am,data=mtcars,FUN=mystats)

4、describe.by():

doBy包(describe.by()函数不允许指定任意函数,)

例:

library(psych)

describe.by(mtcars[vars],mtcars$am)

5、reshape包分组:

(重铸和融合)

例:

library(reshape)

dstats<-function(x)(c(n=length(x),mean=mean(x),

sd=sd(x)))

dfm<-melt(mtcars,measure.vars=c("mpg","hp",

"wt"),id.vars=c("am","cyl"))

cast(dfm,am+cyl+variable~.,dstats)

 

频数表和列联表

1、table():

生成简单的频数统计表

mytable<-with(Arthritis,table(Improved))

Mytable

2、prop.table():

频数转化为比例值

prop.table(mytable)

3、prop.table()*100:

转化为百分比

prop.table(mytable)*100

二维列联表

4、table(A,B)/xtabs(~A+b,data=mydata)

例:

mytable<-xtabs(~Treatment+Improved,data=Arthritis)

5、margin.table()和prop.table():

函数分别生成边际频数和比例

(1:

行,2:

列)

行和与行比例

margin.table(mytable,1)

prop.table(mytable,1)

列和与列比例

margin.table(mytable,2)

prop.table(mytable,2)

prop.table(mytable)

 

6、addmargins():

函数为这些表格添加边际和

addmargins(mytable)

admargins(prop.table(mytable))

addmargins(prop.table(mytable,1),2)

addmargins(prop.table(mytable,2,1)

7.crossTable():

gmodels包

例:

library(gmodels)

CrossTable(Arthritis$Treatment,Arthritis$Improved)

多维列联表

1、table()和xtabs():

都可以基于三个或更多的类别型变量生成多维列联表。

2、ftable():

例:

mytable<-xtabs(~Treatment+Sex+Improved,data=Arthritis)

mytable

ftable(mytable)

margin.table(mytable,1)

margin.table(mytable,2)

margin.table(mytable,3)

margin.table(mytable,c(1,3))

ftable(prop.table(mytable,c(1,2)))

ftable(addmargins(prop.table(mytable,c(1,2)),3))

gtable(addmargins(prop.table(mytable,c(1,2)),3))*100

独立检验

1、卡方独立性检验:

chisq.test()

例:

library(vcd)

mytable<-xtabs(~Treatment+Improved,data=Arthritis)

chisq.test(mytable)

mytable<-xtabs(~Improved+Sex,data=Arthritis)

chisq.test(mytable)

2、Fisher精确检验:

fisher.test()

例:

mytable<-xtabs(~Treatment+Improved,data=Arthritis)

fisher.test(mytable)

3、Cochran-Mantel—Haenszel检验:

mantelhaen.test()

例:

mytable<-xtabs(~Treatment+Improved+Sex,data=Arthritis)

mantelhaen.test(mytable)

相关性度量

1、assocstats():

例:

library(vcd)

mytable<-xtabs(~Treatment+Improved,data=Arthritis)

assocstats(mytable)

2、cor():

函数可以计算这三种相关系数,

3、cov():

函数可用来计算协方差

例:

states<-state.x77[,1:

6]

cov(states)

cor(states)

cor(states,method="spearman")

x<-states[,c("Population","Income","Illiteracy","HSGrad")]

y<-states[,c("LifeExp","Murder")]

cor(x,y)

4、pcor():

偏相关ggm包

例:

library(ggm)

pcor(c(1,5,2,3,6),cov(states))

相关性的显著性检验

1、cor.test()

其中的x和y为要检验相关性的变量,alternative则用来指定进行双侧检验或单侧检验(取值为"two.side"、"less"或"greater"),而method用以指定要计算的相关类型("pearson"、

"kendall"或"spearman")当研究的假设为总体的相关系数小于0时,请使用alternative=

"less"。

在研究的假设为总体的相关系数大于0时,应使用alternative="greater"。

在默认情况下,假设为alternative="two.side"(总体相关系数不等于0)。

例:

cor.test(states[,3],states[,5])

2、corr.test():

可以为Pearson、Spearman或Kendall相关计算相关矩阵和显著性水平。

例:

library(psych)

corr.test(states,use="complete")

3、pcor.test():

psych包

t检验

1、t.test(y~x,data)(独立样本)

例:

library(MASS)

t.test(Prob~So,data=UScrime)

2、t.test(y1,y2,paired=TRUE)(非独立)

例:

library(MASS)

sapply(UScrime[c("U1","U2")],function(x)(c(mean=mean(x),

sd=sd(x))))

with(UScrime,t.test(U1,U2,paired=TRUE))

组间差异的非参数检验

两组的比较:

1、wilcox.test(y~x,data):

评估观测是否是从相同的概率分布中抽得

例:

with(UScrime,by(Prob,So,median))

wilcox.test(Prob~So,data=UScrime)

2、wilcox.test(y1,y2,paried=TRUE):

它适用于两组成对数据和无法保证正态性假设的情境。

例:

sapply(UScrime[c("U1","U2")],median)

with(UScrime,wilcox.test(U1,U2,paired=TRUE))

多于两组的比较:

1、kruskal.test(y~A,data):

各组独立

例:

states<-as.data.frame(cbind(state.region,state.x77))

kruskal.test(Illiteracy~state.region,data=states)

2、friedman.test(y~A|B,data):

各组不独立

非参数多组比较:

1、npmc():

npmc包

例:

class<-state.region

var<-state.x77[,c("Illiteracy")]

mydata<-as.data.frame(cbind(class,var))

rm(class,var)

library(npmc)

summary(npmc(mydata),type="BF")

aggregate(mydata,by=list(mydata$class),median)

回归

用一个或多个预测变量(也称自变量或解释变量)来预测响应变量(也称因变量、效标变量或结果变量)的方法。

1、lm():

拟合回归模型lm(y~x1+x2+x3,data)

 

简单线性回归

1、lm():

(data是数据框)

例:

fit<-lm(weight~height,data=women)

summary(fit)

women$weight

fitted(fit)

residuals(fit)

plot(women$height,women$weight,main="WomenAge30-39",

xlab="Height(ininches)",ylab="Weight(inpounds)")

多项式回归

例:

fit2<-lm(weight~height+I(height^2),data=women)

summary(fit2)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1