《R语言实战》学习笔记第四章

本文是《R语言实战》第四章的学习笔记,主要涵盖了如何创建新变量、变量重编码、重命名、处理缺失值、日期值操作、类型转换、数据排序、数据集的合并(横向和纵向连接)以及数据子集的选择方法。内容详细讲解了R语言中数据管理的基础技巧。
摘要由CSDN通过智能技术生成

基本数据管理

4.2 创建新变量

如果想创建一个储存当前数据库内数据运算后结果的变量到数据框中

使用within()函数(可以修改数据框中的变量)

> mydata <- data.frame(x1=c(2,2,6,4),x2=c(3,4,2,8))
> mydata <- within(mydata,{
+ sumx <- x1+x2
+ meanx <- (x1+x2)/2
+ })
> mydata
  x1 x2 meanx sumx
1  2  3   2.5    5
2  2  4   3.0    6
3  6  2   4.0    8
4  4  8   6.0   12

还可以使用transform()函数。*注意:在向数据库中添加新变量时,使用transform()函数比其他函数使用起来更加简便。sumx和meanx后接的是等号而不是赋值符号,将新变量作为函数内的选项。

> rm(mydata)
> mydata <- data.frame(x1=c(2,2,6,4),x2=c(3,4,2,8))
> mydata <- transform(mydata,sumx=x1+x2,meanx=(x1+x2)/2)
> str(mydata)
'data.frame':	4 obs. of  4 variables:
 $ x1   : num  2 2 6 4
 $ x2   : num  3 4 2 8
 $ sumx : num  5 6 8 12
 $ meanx: num  2.5 3 4 6

4.3 变量的重编码

常用的逻辑运算符见书P71

在希望对变量的现有值创建新值时,需要对变量值进行重编码并且将其储存为数据库的新变量值。

举例:

> 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
  manager     date country gender age q1 q2 q3 q4 q5
1       1 10/24/08      US      M  32  5  4  5  5  5
2       2 10/28/08      US      F  45  3  5  2  5  5
3       3  10/1/08      UK      F  25  3  5  5  5  2
4       4 10/12/08      UK      M  39  3  3  4 NA NA
5       5   5/1/09      UK      F  99  2  2  1  2  1

现在想对受调查者的年龄进行分层,分选为“Young”,“Middle aged”,“Elder”。

使用within()函数

> leadership <- within(leadership,{
+ agecat <- NA
+ agecat [age>75] <- "Elder"
+ agecat[age<=75 &
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值