R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。在学习R数据科学之前,我们首先要对R语言的基础语法有一个良好的了解,方便我们理解以后的数据科学算法。本次语法精讲分三次讲完,每次负责讲解其中一部分!本次的R语言语法精讲(三)主要介绍了 R语言的数据处理技术,涉及到很多数据科学常用的数据预处理技术。学完本文后,您将可以完全掌握R语言数据处理与数据分析的能力,并结合R语言语法精讲(一)和R语言语法精讲(二)以及您的专业知识,可以解决大多数数据分析的系统工作,已经可以熟练运用R语言进行数据建模。
本文引用:
《R语言实战--第2版》---------Robert I.Kabacoff
《统计计算与模拟》课程课件-------深圳大学林炳清老师
本文内容:
- R常用数据结构
- R的运算以及常用函数
- R语言编程结构
判断if-else
循环for、while、repeat
自定义函数 - R的输入与输出
- R基础绘图
- 基本数据管理(本文)
- 高级数据管理(本文)
1.基本数据管理
1.1 创建leadership数据框
manager <- c(1, 2, 3, 4, 5)
date <- c("10/24/08", "10/28/08", "10/1/08", "10/12/08", "5/1/09")
country <- c("US", "US", "UK", "UK", "UK")
gender <- c("M", "F", "F", "M", "F")
age <- c(32, 45, 25, 39, 99)
q1 <- c(5, 3, 3, 3, 2)
q2 <- c(4, 5, 5, 3, 2)
q3 <- c(5, 2, 5, 4, 1)
q4 <- c(5, 5, 5, NA, 2)
q5 <- c(5, 5, 2, NA, 1)
leadership <- data.frame(manager, date, country, gender, age,
q1, q2, q3, q4, q5, stringsAsFactors=FALSE)
leadership
1.2 创建新变量
mydata<-data.frame(x1 = c(2, 2, 6, 4),
x2 = c(3, 4, 2, 8))
# 方式1
mydata$sumx <- mydata$x1 + mydata$x2
mydata$meanx <- (mydata$x1 + mydata$x2)/2
# 方式2
attach(mydata)
mydata$sumx <- x1 + x2
mydata$meanx <- (x1 + x2)/2
detach(mydata)
# 方式3(推荐)
mydata <- transform(mydata,
sumx = x1 + x2,
meanx = (x1 + x2)/2)
mydata
1.3 变量的重编码
重编码涉及根据同一个变量和/或其他变量的现有值创建新值的过程。举例来说,你可能想:
- 将一个连续型变量修改为一组类别值;
- 将误编码的值替换为正确值;
- 基于一组分数线创建一个表示及格/不及格的变量。
# 方式1:
leadership$age[leadership$age == 99] <- NA
leadership$agecat[leadership$age > 75] <- "Elder"
leadership$agecat[leadership$age >= 55 &
leadership$age <= 75] <- "Middle Aged"
leadership$agecat[leadership$age < 55] <- "Young"
# 方式2:使用within()简化代码:
leadership <- within(leadership,{
agecat <- NA
agecat[age > 75] <- "Elder"
agecat[age >= 55 & age <= 75] <- "Middle Aged"
agecat[age < 55] <- "Young" })
leadership
1.4 变量的重命名
如果对现有的变量名称不满意,你可以交互地或者以编程的方式修改它们。
names(leadership)
nam