R语言习题Word格式文档下载.docx
- 文档编号:14098123
- 上传时间:2022-10-18
- 格式:DOCX
- 页数:15
- 大小:241.39KB
R语言习题Word格式文档下载.docx
《R语言习题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《R语言习题Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
78
22
4
CherylCushing
575
66
18
5
ReuvenYtzrhak
454
96
15
6
JoelKnox
634
89
30
7
MaryRayburn
576
37
8
GregEngland
421
56
9
BradTmac
599
68
10
TracyMcgrady
666
100
38
1:
输入数据——R语言导入xlsx
>
install.packages("
xlsx"
)
library(xlsx)
workbook<
-"
D:
/R/StuScore.xlsx"
StuScore<
-read.xlsx(workbook,1)
StuScore
2:
数据预处理——将变量进行标准化
options(digits=2)#限定为2位小数
afterscale<
-scale(StuScore[,3:
5])
afterscale
MathScienceEnglish
[1,]-0.581.0400.20
[2,]-1.02-0.815-1.17
[3,]0.82-0.086-0.12
[4,]0.28-0.881-0.54
[5,]-1.151.106-0.86
[6,]0.980.6430.73
[7,]0.29-0.0861.47
[8,]-1.54-1.544-1.17
[9,]0.56-0.749-0.12
[10,]1.351.3721.57
attr(,"
scaled:
center"
MathScienceEnglish
5517923
scale"
84.715.19.5
3:
通过函数mean()来计算各行的均值以及获得综合得分,并使用cbind()将其添加到花名册中
#3在afterscale中计算标准差均值,并将其添加到StuScore
score<
-apply(afterscale,1,mean)#1表示行,mean表示均值函数
StuScore<
-cbind(StuScore,score)
StuScore
StuIdStuNameMathScienceEnglishscore
11JohnDavis50295250.22
22AngelaWilliams4656712-1.00
33BullJones62178220.21
44CherylCushing5756618-0.38
55ReuvenYtzrhak4549615-0.30
66JoelKnox63489300.78
77MaryRayburn57678370.56
88GregEngland4215612-1.42
99BradTmac5996822-0.10
1010TracyMcgrady666100381.43
4:
函数quantile()给出学生综合得分的百分位数
quantile(x,probs):
求分位数,其中x为待求分位数的数值型向量,probs为一个由[0,1]之间的概率值组成的数值向量
>
afterquantile<
-quantile(score,c(.8,.6,.4,.2))
afterquantile
80%60%40%20%
0.600.21-0.18-0.50
5:
使用逻辑运算符,把score转为等级(离散型)
StuScore$grade[score>
=afterquantile[1]]<
A"
StuScore$grade[score<
afterquantile[1]&
&
score>
=afterquantile[2]]<
B"
afterquantile[2]&
=afterquantile[3]]<
C"
afterquantile[3]&
=afterquantile[4]]<
D"
afterquantile[4]]<
E"
StuIdStuNameMathScienceEnglishscoregrade
11JohnDavis50295250.22B
22AngelaWilliams4656712-1.00E
33BullJones62178220.21B
44CherylCushing5756618-0.38E
55ReuvenYtzrhak4549615-0.30E
66JoelKnox63489300.78B
77MaryRayburn57678370.56B
88GregEngland4215612-1.42E
99BradTmac5996822-0.10E
1010TracyMcgrady666100381.43B
6:
使用strsplit()以空格为界把学生姓名拆分为姓氏和名字
StuScore$StuName<
-as.character(StuScore$StuName)
is.character(StuScore$StuName)
[1]TRUE
name<
-strsplit(StuScore$StuName,"
"
name
[[1]]
[1]"
John"
Davis"
[[2]]
Angela"
Williams"
[[3]]
Bull"
Jones"
[[4]]
Cheryl"
Cushing"
[[5]]
Reuven"
Ytzrhak"
[[6]]
Joel"
Knox"
[[7]]
Mary"
Rayburn"
[[8]]
Greg"
England"
[[9]]
Brad"
Tmac"
[[10]]
Tracy"
Mcgrady"
7:
把name分成Firstname和LastName,加入到StuScore中
FirstName<
-sapply(name,"
["
1)
LastName<
2)
-cbind(FirstName,LastName,StuScore[,-1])
FirstNameLastNameLastNameStuNameMathScienceEnglishscoregrade
1JohnDavisDavisJohnDavis50295250.22B
2AngelaWilliamsWilliamsAngelaWilliams4656712-1.00E
3BullJonesJonesBullJones62178220.21B
4CherylCushingCushingCherylCushing5756618-0.38E
5ReuvenYtzrhakYtzrhakReuvenYtzrhak4549615-0.30E
6JoelKnoxKnoxJoelKnox63489300.78B
7MaryRayburnRayburnMaryRayburn57678370.56B
8GregEnglandEnglandGregEngland4215612-1.42E
9BradTmacTmacBradTmac5996822-0.10E
10TracyMcgradyMcgradyTracyMcgrady666100381.43B
8:
order排序
StuScore[order(LastName,FirstName),]
9:
为StuScore绘制分组条形图
vcd"
library(vcd)
fill_colors<
-c()#不同的等级,不同的颜色显示
for(iin1:
length(StuScore$Science))
{
if(StuScore$Science[i]==100)
fill_colors<
-c(fill_colors,"
red"
}
elseif(StuScore$Science[i]<
100&
StuScore$Science[i]>
=80)
yellow"
}
80&
=60)
blue"
}else{
green
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 习题