使用R进行数据提取

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


读取并创建数据表

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

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

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

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

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

提取行信息

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

1
2
#提取数据表前两行信息
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的贷款信息。

1
2
#提取特定用户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的贷款信息。

1
2
#提取多个特定用户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

提取列信息

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

1
2
#提取前两列信息
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列的信息。

1
2
#提取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列的信息。

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

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

提取特定行列信息

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

1
2
#提取第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和列名称,进行信息提取。

1
2
#提取特定用户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函数用来确定贷款金额最大值的行号。

1
2
#提取贷款金额最大值的信息
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函数来提取贷款金额最小值所在行的信息。

1
2
#提取贷款金额最小值的信息
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
—【所有文章及图片版权归 蓝鲸(王彦平)所有。欢迎转载,但请注明转自“蓝鲸网站分析博客”。】—



Read more: http://bluewhale.cc/2016-11-03/use-r-for-data-extraction.html#ixzz5G1ZOCZZw
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值