R语句常用函数汇总Word格式.docx
《R语句常用函数汇总Word格式.docx》由会员分享,可在线阅读,更多相关《R语句常用函数汇总Word格式.docx(24页珍藏版)》请在冰豆网上搜索。
a数列里面最大数
which(a==2):
查找a数列中等于2的数,并返回该数所对应位置
a[which(a==2)]:
先查找查找a数列中等于2的数,并返回该数所对应位置,然后对应的数值举例:
a<
-c(1,3,5,7)
>
which(a>
5)
[1]4
a[which(a>
5)]
[1]7
()函数---反转
举例:
a=1:
10
rev(a)
[1]10987654321
()函数---升序排列
a=c(1,4,2,5,3,5,4,7,4)
sort(a)
[1]123444557
()函数---将数据转变成按行列排布
20
matrix(a,nrow=5,ncol=4)
[,1][,2][,3][,4]
[1,]161116
[2,]271217
[3,]381318
[4,]491419
[5,]5101520
10.函数t()----矩阵行列反置
t(matrix(a,nrow=5,ncol=4))
[,1][,2][,3][,4][,5]
[1,]12345
[2,]678910
[3,]1112131415
[4,]1617181920
11.diag():
矩阵对角元素向量或生成对角矩阵
a=matrix(1:
16,nrow=4,ncol=4)
a
[,1][,2][,3][,4]
[1,]15913
[2,]261014
[3,]371115
[4,]481216
diag(a)
[1]161116
diag(diag(a))
[,1][,2][,3][,4]
[1,]1000
[2,]0600
[3,]00110
[4,]00016
12.统计分布
每一种分布有四个函数:
d――density(密度函数),p――分布函数,q――分位数函数,r――随机数函数。
比如,正态分布的这四个函数为dnorm,pnorm,qnorm,rnorm。
下面我们列出各分布后缀,前面加前缀d、p、q或r就构成函数名:
norm:
正态,t:
t分布,f:
F分布,chisq:
卡方(包括非中心)
unif:
均匀,exp:
指数,weibull:
威布尔,gamma:
伽玛,beta:
贝塔
lnorm:
对数正态,logis:
逻辑分布,cauchy:
柯西,
binom:
二项分布,geom:
几何分布,hyper:
超几何,nbinom:
负二项,pois:
泊松
signrank:
符号秩,wilcox:
秩和,tukey:
学生化极差
():
矩阵求逆或解线性方程
14.eigen():
矩阵的特征值分解
生成excel类似的数组
a=c(1,3,5,6,7)
b=c(2,4,6,6,8)
x=(a,b)
x
ab
112
234
356
466
578
(x=('
重量'
=a,'
运费'
=b))
重量运费
16.画散点图plot()
(二)初级函数
文件读取:
(x=("
"
))
V1V2V3
1123
2456
2.读取excel文件
1)先将excel文件保存为prn文件
y<
("
header=T)
y
agehighweight
11815050
21716060
2)安装RODBC安装包,导入excle文件
local({pkg<
(sort(.package=TRUE)),graphics=T$
+if(nchar(pkg))library(pkg,
Error:
unexpected'
if'
in:
local({pkg<
if"
library(RODBC)
z<
-odbcConnectExcel("
)
(w<
-sqlFetch(z,"
Sheet1"
3.循环语句:
for
for(iin1:
20){a[i]=i*2+3}
[1]5791113151719212325272931333537394143
4.循环语句:
while
a[1]=5
i=1
while(a[i]<
121){i=i+1;
a[i]=a[i-1]+2}
[1]579111315171921232527293133353739
[19]414345474951535557596163656769717375
[37]777981838587899193959799101103105107109111
[55]113115117119121
数据来源,可将txt编辑好的程序直接读取,并运行。
source("
D:
\\XX云\\"
6.综合举例
题目:
模拟产生统计专业同学的名单(学号区分),记录数学分析,线性代数,概率统计三科成绩,然后进行一些统计分析
结果:
num=seq(1008001,1008100)
num
[1]100800110080021008003100800410080051008006100800710080081008009
[10]100801010080111008012100801310080141008015100801610080171008018
[19]100801910080201008021100802210080231008024100802510080261008027
[28]100802810080291008030100803110080321008033100803410080351008036
[37]100803710080381008039100804010080411008042100804310080441008045
[46]100804610080471008048100804910080501008051100805210080531008054
[55]100805510080561008057100805810080591008060100806110080621008063
[64]100806410080651008066100806710080681008069100807010080711008072
[73]100807310080741008075100807610080771008078100807910080801008081
[82]100808210080831008084100808510080861008087100808810080891008090
[91]100809110080921008093100809410080951008096100809710080981008099
[100]1008100
x1=round(runif(100,min=80,max=100))
x1
[1]8397100909591939197878986949994978983
[19]8298988410087899799948893899089839395
[37]908194958294949682949091839697939881
[55]878094849480878483859681978793979882
[73]859089908889988881819685988796918698
[91]100898785909082808195
x2=round(rnorm(100,mean=80,sd=7))
x2
[1]737988889279779087839385808084876372787785818078
[25]797373908283808679748388908379836869718583868267
[49]847266917483737886778181898483829181806992858279
[73]886980718979827181678272877887848194758071867875
[97]75729575
x3=round(rnorm(100,mean=83,sd=18))
x3
[1]71648497567172729685938080110781185585
[19]9983921136591761206378727094101698410087
[37]10311477707354897866834611368948911580105
[55]671007389806411574819982909290731018896
[73]1018010064741218194725578886010370639672
[91]10493921107482801116492
x3[which(x3>
100)]=100
[1]71648497567172729685938080100781005585
[19]9983921006591761006378727094100698410087
[37]10010077707354897866834610068948910080100
[55]671007389806410074819982909290731008896
[73]1008010064741008194725578886010070639672
[91]10093921007482801006492
x=(num,x1,x2,x3)–数据合并
numx1x2x3
11008001837371
21008002977964
310080031008884
41008004908897
51008005959256
61008006917971
71008007937772
81008008919072
91008009978796
101008010878385
111008011899393
121008012868580
131008013948080
1410080149980100
151008015948478
1610080169787100
171008017896355
181008018837285
191008019827899
201008020987783
211008021988592
2210080228481100
2310080231008065
241008024877891
251008025897976
2610080269773100
271008027997363
281008028949078
291008029888272
301008030938370
311008031898094
3210080329086100
331008033897969
341008034837484
3510080359383100
361008036958887
3710080379090100
3810080388183100
391008039947977
401008040958370
411008041826873
421008042946954
431008043947189
441008044968578
451008045828366
461008046948683
471008047908246
4810080489167100
491008049838468
501008050967294
511008051976689
5210080529391100
531008053987480
5410080548183100
551008055877367
5610080568078100
571008057948673
581008058847789
591008059948180
601008060808164
6110080618789100
621008062848474
631008063838381
641008064858299
651008065969182
661008066818190
671008067978092
681008068876990
691008069939273
7010080709785100
711008071988288
721008072827996
7310080738588100
741008074906980
7510080758980100
761008076907164
771008077888974
7810080788979100
791008079988281
801008080887194
811008081818172
821008082816755
831008083968278
841008084857288
851008085988760
8610080868778100
871008087968770
881008088918463
891008089868196
901008090989472
91100809110075100
921008092898093
931008093877192
9410080948586100
951008095907874
961008096907582
971008097827580
9810080988072100
991008099819564
1001008100957592
(x,file="
=F,=F,sep="
)-保存数据
数据合并-合成
x=(num,x1,x2,x3)
将数据写入(保存)txt文档
(x,file="
"
)
9.mean():
均值
():
列均值
colMeans(x)
numx1x2x3
colMeans(x)[c("
x1"
"
x2"
x3"
)]
x1x2x3
apply(x,2,mean)
apply(x,2,max)
100810010095100
apply(x,2,min)
1008001806346
apply(x[c("
)],1,sum)—求总分
[1]227240272275243241242253280255275251254279256284207240259258
[21]275265245256244270235262242246263276237241276270280264250248
[41]223217254259231263218258235262252284252264227258253250255225
[61]276242247266269252269246258282268257273239269225251268261253
[81]234203256245245265253238263264275262250271242247237252240262
(apply(x[c("
)],1,sum))---求总分最大的人是第几个
[1]46
>
x$num[(apply(x[c("
)],1,sum))]---求总分最大的人num
[1]1008046
第二讲
绘制直方图
接上例:
hist(x$x1)
绘制散点图
plot(x1,x2)
plot(x$x1,x$x2)
列联函数
table(x$x1)-----各数出现频数
808182838586878889
664683541
909192939495969798
3557104257
99100
45
柱状图
barplot(table(x$x1))
饼图
pie(table(x$x1))
箱尾图
boxplot(x$x1,x$x2,x$x3)
1)箱子的上下横线为样本的25%和75%分位数
2)箱子中间的横线为样本的中位数
3)上下延伸的直线称为尾线,尾线的
尽头为最高值和最低值
4)异常值
箱线图
boxplot(x$x1,x$x2,x$x3,col=c("
red"
green"
blue"
),notch=T)
或者:
boxplot(x[2:
4],col=c("
水平放置箱尾图
boxplot(x$x1,x$x2,x$x3,horizontal=T)
星象图
1)每个观测单位的数值表示为一个图形
2)每个图的每个角表示一个变量,字符串类型会标注在图的下方
3)角线的长度表达值的大小
A:
stars(x[c("
)])
B:
)],full=T,=T)—饼状分割
C:
s