刘p7557pnygqhy / R语言 / R语言 | 第六讲:R语言数据管理(三)

分享

   

R语言 | 第六讲:R语言数据管理(三)

2018-10-12  刘p7557pn...

撰稿人:统计小可爱,热心市民K


我们经常会从一个大的数据集里选择几个变量或符合某些条件的观测来创建一个新的数据集。今天这一讲,就向大家介绍怎么选取特定的观测和变量。假如现在我们有一个数据集seed,数据情况如下。我们可以通过R软件轻松实现以下几种需求。

首先我们需要回顾几个常用函数:  

data:表示为数据集。

data[ , ]:括号中逗号里左边表示行信息,右边表示列信息。如果行或列留空,表示默认选择所有行或列。

names(data):查看数据集data的变名。

which(names(data)== ' var '):给出数据集data中变量var的位置。

c( x , y , z ):c()函数的使用非常简单,可以把各个值连成向量或列表。

01

保留变量

根据上述的基本函数,我们便可以选取或保留数据集的某些变量:

newdata<-data[ , c ( n , m , l ) ]

函数表示从data数据集中选择了第n、第m和第l个变量,将行下标留空,表示默认选择所有行,并将它们保存到新的数据框newdata


例1:假设我们想要选取seed数据集的第1,2,3列变量,也就是obs,sex,和width。

newseed<-seed[ , c ( 1 , 2 , 3 ) ]

我们也可以通过直接输入变量名实现上边的结果:

newseed<-seed[ , c ( ' obs ', ' sex ', ' width ' ) ]

02

剔除变量

如果知道要删除的变量是第几个变量的情况下,可以直接使用以下语句:

newdata<-data[ , c( -n , -m ) ]

如果不知道变量位置的可以使用以下语句:

data$var<-NULL


例2:假设我们想要删除seed数据集的2,3列变量

newsee<-seed[ , c( -2 , -3 ) ]

我们也可以通过下面的方法来对变量名删除:

see$sex<-NULL

see$width<-NULL

03

选择观测值

一般来说,我们有时需要进行分组统计分析,或者只需要分析其中的一部分数据,则可以通过拆分数据集来实现上述操作。

同样,根据上述的基本函数,我们也可以选取或保留数据集的某些观测:

newdata<-data[ 1:100 , ]

选择data数据集前100个观测,将行下标留空,表示默认选择所有列。

newdata<-data[ data$var==n , ]

通过对var是否等于n进行逻辑判断并输出对的所有观测

newdata<-data[ which(data$var>n & data$var <m) , ]

选择var变量在n~m取值之间的观测


例3:假设我们想要选择sex=1的观测进行分析:

newseed<-seed[ see$sex==1 , ]

例4:假设我们想要选择cbc大于1,且cbc小于5的观测进行分析:

newseed<-seed[which(see$cbc>1 & see$cbc <5) , ]

大家发现文章下面有一个烦人的小广告吗?

如果你喜欢我们的文章

举手之劳点一下

相当于给作者们打个赏

感谢大家支持

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多
    喜欢该文的人也喜欢 更多

    ×
    ×

    ¥.00

    微信或支付宝扫码支付:

    开通即同意《个图VIP服务协议》

    全部>>