使用R进行数据提取
数据提取是数据分析日常工作中遇到最多的需求,本篇文章介绍如何通过R按特定的维度或条件对数据进行提取,完成数据提取需求。
读取并创建数据表
首先第一步是读取数据,并创建名称为loandata的数据表。后面我们将从这个表中进行数据提取。
#读取并创建数据表 loandata=data.frame(read.csv('loan_data.csv',header = 1))
将数据表中的用户ID列设置为索引列,下面是具体的代码和结果。
#设置用户ID为索引 rownames(loandata)=loandata$member_id #查看数据表 head(loandata)
提取行信息
按行提取信息简单的方法是输入开始和结束的行号,下面的代码提取了第一行和第二行的信息。
#提取数据表前两行信息 loandata[1:2,]
也可以直接输入索引行的名称来提取特定行的信息,下面的代码提取了用户ID为1296599的贷款信息。
#提取特定用户ID信息 loandata['1296599',]
同样的方式可以同时准确的提取多个特定用户ID的贷款信息。
#提取多个特定用户ID信息 loandata
提取列信息
按列提取信息的方式与行类似,输入开始的列号和结束的列号。下面的代码中提取了第一列和第二列的信息。
#提取前两列信息 loandata[1:2]
也可以直接输入列名称提取特定列的信息,例如下面的代码提取了数据表中term列的信息。
#提取term列信息 loandata['term']
同样的方法,可以同时提取多个列的信息,下面的代码中提取了term和grade列的信息。
#提取term列和grade列信息 head(loandata)
提取特定行列信息
把提取行信息的方法与提取列信息的方法汇总,可以提取特定行列的信息。下面的代码中提取了第三行,第5列和第6列的信息。
#提取第3行5,6列信息 loandata[3:3,5:6]
也可以直接输入索引行中用户ID和列名称,进行信息提取。
#提取特定用户ID的贷款金额 loandata['1296599','loan_amnt']
提取最大值的行信息
除了提取行和列的信息外,还可以按条件进行提取,例如提取数据表中贷款金额最大值的行。下面的代码中使用which.max函数用来确定贷款金额最大值的行号。数据分析师培训
#提取贷款金额最大值的信息 loandata[which.max(loandata$loan_amnt),]
提取最小值的行信息
同样的方法也可以用which.min函数来提取贷款金额最小值所在行的信息。
#提取贷款金额最小值的信息 loandata[which.min(loandata$loan_amnt),]