首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言入门之变量重编码与重命名

R语言入门之变量重编码与重命名

作者头像
生信与临床
发布2020-08-06 10:05:17
1.9K0
发布2020-08-06 10:05:17
举报

第一部分 变量重编码

在很多时候,我们需要对数据进行分类,比如根据血糖值将患者分成糖尿病组与非糖尿病组,亦或者按照年龄将样本分为老年人,中年人和青年人等等,这些就需要我们对数据进行重新编码。

# 创建新的变量和数据集
x1 <- c(1,2,3,4,5) # 向量x1
x2 <- c(1,4,9,16,25) # 向量x2
age <- c(68,25,39,76,52) # 向量age
sex <- c(0,1,1,0,1) # 向量sex
mydata <- data.frame(x1,x2,age,sex) # 用向量构建新的数据框
 
# 按照年龄创建两个分类
mydata$agecat1 <- ifelse(mydata$age > 65,
c("older"), c("younger")) # 大于65岁为老年组,其余为青年组
mydata #查看数据

# 在R中我们通常用[]来对数据进行索引
# 按照年龄创建3个类
attach(mydata) # 固定数据
mydata$agecat2[age > 75] <- "Elder" # 将年龄大于75岁的设为老年组
mydata$agecat2[age > 45 & age <= 75] <- "Middle Aged" # 年龄在45~75设为中年组
mydata$agecat2[age <= 45] <- "Young" # 年龄在45岁以下的设为青年组
mydata # 查看数据
detach(mydata) # 解固定数据

关于如何在R中进行数据的索引,我会在以后的内容中和大家详细介绍,先掌握上面的索引方式即可。

第二部分 变量重命名

在R中你既可以采用编程的方式对变量进行重命名,也可以采用像SPSS那种的交互方式来修改变量名,这里推荐使用编程的方式来对变量进行重命名。

# 使用rename()函数重命名
library(reshape) # 加载reshape包
# 创建新的变量
x1 <- c(1,2,3,4,5) # 向量x1
x2 <- c(1,4,9,16,25) # 向量x2
age <- c(68,25,39,76,52) # 向量age
sex <- c(0,1,1,0,1) # 向量sex
mydata <- data.frame(x1,x2,age,sex) # 用向量构建新的数据框

# 查看数据框的列名
names(mydata)
# [1] "x1"  "x2"  "age" "sex"
# mydata <- rename(mydata, c(oldname="newname")) # 第一个参数是数据框的名字,第二个参数是一个向量,其中等号左侧是旧的变量名,右侧是新的变量名(需用引号)
mydata <- rename(mydata, c(x1="ID"))names(mydata)#[1] "ID"  "x2"  "age" "sex"

# 当然你也可以直接使用names()这个函数来对变量重命名
names(mydata) <- c("ID","y","age","sex")
names(mydata)#[1] "ID"  "y" "age"   "sex"
 

关于变量重编码和重命名的内容现已讲解完毕,其中重编码部分的内容相对比较困难,需要大家勤加联系才能熟练掌握!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信与临床 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档