1. 加载rpart包中的car.test.frame数据集,完成以下题目:
  1. 显示数据集的前六条数据,显示数据集结构信息,获取数据集的维度信息。

实验代码:

install.packages("rpart")

library(rpart)

data(car.test.frame)

View(car.test.frame)

head(car.test.frame,6)

dim(head(car.test.frame,6))  #查看数据集的维度

  1. 将变量名称变为价格(Price)、产地(Country)、可靠性(Reliability)、英里数(Mileage)、类型(Type)、车重(Weight)、发动机功率(Disp.),净马力(HP)。

实验代码:

colnames(car.test.frame)

names(car.test.frame) <- c("价格(Price)","产地(Country)",

"可靠性(Reliability)",

"英里数(Mileage)",

"类型(Type)","车重(Weight)",

"发动机功率(Disp.)","净马力(HP)")

View(car.test.frame)

  1. 将英里数换算为“油耗”,油耗=100*4.546/(1.6*英里数),增加新列:油耗;

实验代码:

car.test.frame$油耗 <- 100 * 4.546/(1.6 * car.test.frame$`英里数(Mileage)`)

View(car.test.frame)

  1. 分组油耗,值为A,B,C。“油耗”11.6~15.8之间为A,9~11.6为B,7.6~9为C,分别计算A,B,C各组的样本数;

实验代码:

car.test.frame$group油耗[which(car.test.frame$油耗 >= 11.6)]="A"

car.test.frame$group油耗[which(car.test.frame$油耗 <= 11.6)]="B"

car.test.frame$group油耗[which(car.test.frame$油耗 <= 9)]="C"

View(car.test.frame)

  1. 统计不同产地的车辆数,写入下表中。

France

Germany

Japan

Japan/USA

Korea

Mexico

Sweden

USA

1

2

19

7

3

1

1

26

实验代码:

y <- table(car.test.frame$`产地(Country)`)

y

  1. 增加新列,列名为“名称”,值为数据集的行名。

实验代码:

car.test.frame$名称 <- c(row.names(car.test.frame))

View(car.test.frame)

  1. 分别读入“信管2011-2”和“信管2012-2”成绩,完成以下步骤:
  1. 将学号字段转换为字符类型(注意处理学号正确完整显示问题),性别字段设置为因子类型。

实验代码:

setwd("F://R语言//data")

a <- read.csv("信管2011-2.csv")

b <- read.csv("信管2012-2.csv")

a$学号 <- as.character(a$学号)

b$学号 <- as.character(b$学号)

class(a$学号)

class(b$学号)

b$性别 <- factor(b$性别)

class(b$性别)

  1. 合并两个班的成绩单,并创建新的字段:“班级”,并分别记为“信管2011-2”和“信管2012-2”,保存在student数据框中;

实验代码:

a$班级 <- "信管2011-2"

b$班级 <- "信管2012-2"

student <- rbind(a,b)

  1. 在student数据框中找出缺失数据,将其值设为该班的平均分;分别求出两个班的平均分,计入下表中。

信管2011-2

信管2012-2

平均分

73.66667

73.38636

实验代码:

sum(is.na(student$成绩))

mean(a$成绩)

mean(b$成绩)

b[6,4]<-mean(b$成绩, na.rm = T)

student <- rbind(a,b)

  1. 找出两个班最高分的记录,填入下表中。

信管2011-2

信管2012-2

最高分

93

95

  1. 筛选student数据框中男生和女生的成绩,保存为boy.csv,girl.csv。

实验代码:

boy<-subset(student,student$性别 == "男")

gril<-subset(student,student$性别 == "女")

write.table(boy, "boy.csv", row.names=FALSE, col.names=TRUE, sep=",")

write.table(gril, "gril.csv", row.names=FALSE, col.names=TRUE, sep=",")

  1. 用if-else分支实现将百分制分数转化为五级制分数的函数。90-100为优秀,80-89以上良好,70-79以上中等,60-69及格,59以下不及格。读入成绩数据stu_score.txt,并将评级结果输出为stu_grade.txt。

实验代码:

stu_score<-read.table("F://R语言//414米佳//data//stu_score.txt",header=T)

stu_score$stu_grade

stu_score$stu_grade<- ifelse(stu_score$X88>=90,"优",

ifelse (stu_score$X88>=80,"良好",

ifelse (stu_score$X88>=70,"中等",

ifelse (stu_score$X88>=60,"及格",

ifelse(stu_score$X88<60,"不及格","不及格")

)

)

)

)

write.table(stu_score,file="stu_grade.txt")

  1. 使用鸢尾花数据(iris),其有三个品种Species:Setosa, Versicolor, Virginica,分别用by,aggregate,tapply函数计算三个品种的Sepal.Length、Sepal.Width、Petal.Length、Petal.Width的平均值和最大值。

实验代码:

View(iris)

by(iris$Sepal.Length, iris$Species, mean)

by(iris$Sepal.Width, iris$Species, mean)

by(iris$Petal.Length, iris$Species, mean)

by(iris$Petal.Width, iris$Species, mean)

by(iris$Sepal.Length, iris$Species, max)

by(iris$Sepal.Width, iris$Species, max)

by(iris$Petal.Length, iris$Species, max)

by(iris$Petal.Width, iris$Species, max)

aggregate(. ~ Species, data = iris, mean)

aggregate(. ~ Species, data = iris, max)

iris

tapply(iris$Sepal.Length, iris$Species, mean)

tapply(iris$Sepal.Width, iris$Species, mean)

tapply(iris$Petal.Length, iris$Species, mean)

tapply(iris$Petal.Width, iris$Species, mean)

tapply(iris$Sepal.Length, iris$Species, max)

tapply(iris$Sepal.Width, iris$Species, max)

tapply(iris$Petal.Length, iris$Species, max)

tapply(iris$Petal.Width, iris$Species, max)

  1. 读入bank.csv数据,转为数据框df,查看数据框df前10行数据,分别将该数据框写入外部文件bank.txt和bank2.csv。

实验代码:

setwd("F://R语言//data")

bank <- read.csv("bank.csv")

df <- data.frame(bank)

head(df,10)

write.table(df,file="bank.txt")

write.table(df,file="bank2.csv")

  1. 使用scan()函数,读入data.txt数据文件;对缺失值用数据文件的均值进行填充,将该数据按每行10个数值写入外部文件data2.txt。

实验代码:

setwd("F://R语言//data")

data<-scan("data.txt")

is.na(data)

x<- data[is.na(data)=="TRUE"]

y<-data[!is.na(data)]

z<-mean(y)

data[is.na(data)]<-z

homework530相关推荐

最新文章

  1. 打开Eclipse时出现Failed to create the Java Virtual Machine
  2. 苹果系统里面 dictionary 如何加入中文词典
  3. Mysql学习总结(5)——MySql常用函数大全讲解
  4. Java实例——基于jsoup的简单爬虫实现(从智联获取工作信息)
  5. Canvas API初步学习
  6. java 创建web项目_java – Eclipse:以编程方式创建动态Web项目
  7. 早期更多失败– Java 8
  8. glassfish 4配置_自己构建GlassFish 4.0快照
  9. Win11系统资源管理器自动重启怎么办
  10. swoole开发 php爬虫,PHP使用swoole实现多线程爬虫
  11. 为什么SQL用UPDATE语句更新时更新行数会多3行有触发器有触发器有触发器有触发器有触发器有触发器...
  12. atitit.MIZIAN 陕北方言 特有词汇 大词典 attilax 整理 a--g v1 q31.xlsx
  13. cmd mysql utf8_MySQL中UTF8编码的数据在cmd下乱码
  14. Laravel5.4 导出Excel表格
  15. MySQL 指定各分区路径
  16. Package com.myapp signatures do not match the previously installed version
  17. python 解析域名
  18. IDM UltraEdit编辑器V26.00.0.48 烈火汉化64位版
  19. 【21天算法学习】折半插入排序
  20. vscode突然无法登上remote端的一个解决方案

热门文章

  1. 【CVX】Equivalent convex problems (Huber) Log-optimal investment strategy
  2. B站崩溃3小时引网友狂欢:A站成为最大赢家?
  3. 阿里 P9大佬谈技术认知
  4. python公里转英里_从英里换算为公里
  5. 《2021中国制造行业人才白皮书》出炉(附下载)
  6. 服务器端网站自适应,自适应网站与响应式网站的区别,SEO优化该怎么选择移动端...
  7. 大专生学Java好找工作
  8. C# 使用Vlc播放视频或者监控
  9. 2020微信最新版可以修改ID号了,你的号码还那么尬么?
  10. 抖音测试像哪个明星的软件,抖音中的测测你像哪位明星特效如何拍摄