分享

【R语言学习7】R语言基本数据管理方法简介

 赵坤yb0sabwlt1 2020-12-24

1创建新变量

我们将数据导入到Rstudio中后,常需要对数据进行预处理,而在这中间常需要创建新的变量,具体的方法为 变量名<- 表达式,其中<-代表赋值符号,即我们将表达式的结果赋值给变量名。表达式的构建常由以下符号构成:

(摘自R语言实战第二版)

如图我们将R软件自带的法国食管癌的病例对照研究作为示例数据,通过以下两种方法均可创建新的变量,方法一我们利用$选择data数据框中的ncases和ncontrols并将他们的求和赋值给data中的N变量。方法二的transform是一个函数命令,应用于指定范围的每个元素,首先将范围指定到data数据框中,然后再进行新变量的创建。

2变量的重命名

如果对现有的变量名称不满意,可以交互地或者以编程的方式修改它们,利用fix或者edit函数即可交互式的修改,同时也可以使用如图所示的编程命令修改变量名,即对其进行重新赋值。

3变量的重编码

在实际生活中我们常需根据数据不同的范围确定类别,例如考试成绩低于60为不及格,60-80分为合格,80分以上为优秀,这就是变量的重编码。重编码涉及根据同一个变量和/或其他变量的现有值创建新值的过程,例如将一个连续型变量修改为一组类别值,将误编码的值替换为正确值或基于一组分数线创建一个表示及格/不及格的变量。在对数据进行分类的过程中,我们常需用到逻辑运算符,需注意的是在R语言中等于为==,不等于为!=,或的符号为|,和的符号为&。

(摘自R语言实战第二版)

如图所示我们将N_Sample小于10的数据命名为Little并将数据填入新创建的N_Class列中,或者利用within函数,首先,创建了N_C变量,并将其每一行都设为缺失值。括号中剩下的语句接下来依次执行,将N大于20的命名为Much并赋值给N_C,小于等于20的命名为Little。

4缺失值与重复值

1. 在R中,缺失值以符号NA(NotAvailable,不可用)表示。可使用is.na()检测数据中是否存在缺失值,也可将数据重编码为缺失值。

假设你有一个向量:y <- c(1, 2, 3, NA)

然后使用函数:is.na(y)

将返回c(FALSE, FALSE, FALSE, TRUE)

2. 重复值将会影响数据的导入,默认情况下R不允许导入的数据行名有重复,这时我们需将行名变为变量名,然后判断哪个行名是重复的,可使用一下命令

data[duplicated(data$x),],利用duplicad函数判断data数据框中的x列是否有重复。

5类型转换

数据类型的转换是利用as.格式名称来进行的,比如说我们想将一个矩阵转化为数据框,则可利用as.data.frame()函数。

6数据排序

在R中,可以使用order()函数对一个数据框进行排序。默认的排序顺序是升序。在排序变量的前边加一个减号即可得到降序的排序结果。如

data<- esophnewdata<- data[order(data$ncases),]newdat<- data[order(-data$ncases),]

7数据合并

数据合并主要分为向数据框中添加列(merge函数、 cbind函数)、向数据框中添加行(rbind函数)。如图所示创建两个数据框,通过函数合并后可观察不同参数的区别。

而利用rbind进行合并时需注意两个数据框必须拥有相同的变量,不过它们的顺序不必一定相同。如果dataframeA中拥有dataframeB中没有的变量,需在合并之前做删除dataframeA中的多余变量并在dataframeB中创建追加的变量并将其值设为NA。

8数据筛选

在实际工作中我们常需要对数据进行筛选查看,例如查看某列数据( data$variable.name)或提取数据子集(data[nrow, ncol]),筛选满足相关条件的数据(subset函数)等等,如图我们在airquality数据框中选择temp大于95的数据,或利用select参数选择显示Ozone和Temp,或者可利用-选择不显示某列。具体的函数使用方法都可利用?函数名进行查看。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多