使用R进行数据提取

数据提取是数据分析日常工作中遇到最多的需求,本篇文章介绍如何通过R按特定的维度或条件对数据进行提取,完成数据提取需求。

data_extraction_062214

读取并创建数据表

首先第一步是读取数据,并创建名称为loandata的数据表。后面我们将从这个表中进行数据提取。

#读取并创建数据表
loandata=data.frame(read.csv('loan_data.csv',header = 1))

将数据表中的用户ID列设置为索引列,下面是具体的代码和结果。

#设置用户ID为索引
rownames(loandata)=loandata$member_id
#查看数据表
head(loandata)

%e8%ae%be%e7%bd%ae%e7%b4%a2%e5%bc%95%e5%88%97

提取行信息

按行提取信息简单的方法是输入开始和结束的行号,下面的代码提取了第一行和第二行的信息。

#提取数据表前两行信息
loandata[1:2,]

%e6%9f%a5%e7%9c%8b%e5%89%8d%e4%b8%a4%e8%a1%8c%e6%95%b0%e6%8d%ae

也可以直接输入索引行的名称来提取特定行的信息,下面的代码提取了用户ID为1296599的贷款信息。

#提取特定用户ID信息
loandata['1296599',]

%e6%9f%a5%e7%9c%8b%e7%89%b9%e5%ae%9a%e7%b4%a2%e5%bc%95%e5%80%bc%e6%95%b0%e6%8d%ae

同样的方式可以同时准确的提取多个特定用户ID的贷款信息。

#提取多个特定用户ID信息
loandata

%e6%9f%a5%e7%9c%8b%e5%a4%9a%e7%b4%a2%e5%bc%95%e5%80%bc%e6%95%b0%e6%8d%ae

提取列信息

按列提取信息的方式与行类似,输入开始的列号和结束的列号。下面的代码中提取了第一列和第二列的信息。

#提取前两列信息
loandata[1:2]

%e6%9f%a5%e7%9c%8b%e5%89%8d%e4%b8%a4%e5%88%97%e6%95%b0%e6%8d%ae

也可以直接输入列名称提取特定列的信息,例如下面的代码提取了数据表中term列的信息。

#提取term列信息
loandata['term']

%e6%9f%a5%e7%9c%8b%e7%89%b9%e5%ae%9a%e5%88%97%e6%95%b0%e6%8d%ae

同样的方法,可以同时提取多个列的信息,下面的代码中提取了term和grade列的信息。

#提取term列和grade列信息
head(loandata)

%e6%9f%a5%e7%9c%8b%e5%a4%9a%e5%88%97%e6%95%b0%e6%8d%ae

提取特定行列信息

把提取行信息的方法与提取列信息的方法汇总,可以提取特定行列的信息。下面的代码中提取了第三行,第5列和第6列的信息。

#提取第3行5,6列信息
loandata[3:3,5:6]

%e6%9f%a5%e7%9c%8b%e7%89%b9%e5%ae%9a%e8%a1%8c%e5%88%97%e7%9a%84%e6%95%b0%e6%8d%ae

也可以直接输入索引行中用户ID和列名称,进行信息提取。

#提取特定用户ID的贷款金额
loandata['1296599','loan_amnt']

%e6%9f%a5%e7%9c%8b%e7%89%b9%e5%ae%9a%e8%a1%8c%e5%88%97%e7%9a%84%e6%95%b0%e6%8d%ae1

提取最大值的行信息

除了提取行和列的信息外,还可以按条件进行提取,例如提取数据表中贷款金额最大值的行。下面的代码中使用which.max函数用来确定贷款金额最大值的行号。

#提取贷款金额最大值的信息
loandata[which.max(loandata$loan_amnt),]

%e6%8f%90%e5%8f%96%e6%9c%80%e5%a4%a7%e5%80%bc%e4%bf%a1%e6%81%af%e8%a1%8c

提取最小值的行信息

同样的方法也可以用which.min函数来提取贷款金额最小值所在行的信息。

#提取贷款金额最小值的信息
loandata[which.min(loandata$loan_amnt),]

%e6%8f%90%e5%8f%96%e6%9c%80%e5%b0%8f%e4%bf%a1%e6%81%af%e8%a1%8c
—【所有文章及图片版权归 蓝鲸(王彦平)所有。欢迎转载,但请注明转自“蓝鲸网站分析博客”。】—

Speak Your Mind

*