vlambda博客
学习文章列表

R语言精要-Dataframe篇·上

 👆 点击蓝字就可以关注善思耳哦~~











 

哈喽,听说dataframe也要求加入R语言群啦!太难了,不要急,请慢慢听小编娓娓道来~~


R语言精要-Dataframe篇·上

NO.12 Dataframe篇·上

27 April 2020



我们之前讲过向量和矩阵,加上今天的dataframe,都是R语言中非常重要的概念。


新来的小伙伴可以翻阅我们的往期文章


而小编认为,Dataframe是重中之重。


正文开始之前,我们先梳理一下dataframe与向量,矩阵之间的异同点:



数据类型单一
数据类型可多样
一维
向量

二维
矩阵
Dataframe 




简介

Dataframe是我们以后处理分析数据最重要的一种数据结构。

表格所示,它与矩阵非常类似,都具有纵横排列的数据表格(二维),但是它可以包含多种数据类型,如数值型,字符型,逻辑型等。

接下来,我们通过下面的例子来加深认识一下dataframe吧。
R语言精要-Dataframe篇·上

例1. 创建一个dataframe 

#创建一个dataframeid <- 1:6age <- c(10, 20, 30, 40, 50, 45)gender <- rep(c("Female", "Male"), each = 3)height <- c(1, 1.7, 1.6, 1.8, 1.7, 1.6)mydata <- data.frame(id, age, gender, height) print(mydata)   id age gender height1 1 10 Female 1.02 2 20 Female 1.73 3 30 Female 1.64 4 40 Male 1.85 5 50 Male 1.76 6 45 Male 1.6

【注释】


1. 代码前五行大家应该比较熟悉了(请回顾往期文章)。简单说一下,第1行#后是注释,第2到5行分别创建了4个向量:id,age,gender,height。


2. 第六行中的data.frame( )要求R创建一个dataframe,并将括号里的向量按从左到右的顺序排列作为dataframe的列(column),这些向量也可以称为变量。将新建的dataframe存入mydata,并把结果保存到mydata里。


3. 第七行的print( )要求R回复mydata里面的内容。


其实也可以省略print(),直接输入mydata也可。


4. 第八行到十四行,就是我们创建的dataframe。


与我们在excel或者其他统计软件看到的数据结构几乎是一样的,都具备行与列,或者称为观察(cases)与变量(variables)。

R语言精要-Dataframe篇·上


R语言精要-Dataframe篇·上


当我们拿个一个数据后,第一步往往是想了解这个数据


比如说,变量的名称有哪些。



例2:mydata有哪些变量名 

#了解mydata的变量名names(mydata)[1] "id" "age" "gender" "height"

Notes: names( ), 了解变量名称。

R语言精要-Dataframe篇·上
R语言精要-Dataframe篇·上


R语言精要-Dataframe篇·上


知道变量名之后,我们想要进一步了解前几行的数据(以后处理庞大的数据,比如上千行或更多,大致了解前几行的数据会很实用)。




例3:了解mydata前三行的数据 

#显示mydata前三行的数据head(mydata, 3) id age gender height1 1 10 Female 1.02 2 20 Female 1.73  3  30 Female    1.6
【注释】 


head()命令R给出前几行的数据。


head()默认给出前6行,但是我们特别要求R给出mydata的前3行数据"head(mydata, 3)"。

R语言精要-Dataframe篇·上



R语言精要-Dataframe篇·上


与上述例子相似,我们有时也会对最后的3行感兴趣。



例4: 了解mydata后3行的数据 

#显示mydata后3行的数据tail(mydata, 3) id age gender height4 4 40 Male 1.85 5 50 Male 1.76 6 45 Male 1.6

【注释】 


tail( )的用法与head()很相似。一前一尾,像一套组合拳似得,也是我们了解数据比较重要的两个功能。




R语言精要-Dataframe篇·上

通过以上例子,我们大致都了解mydata长什么样。


那如何了解mydata里面变量的参数呢?


比如,数据类型。




例5. 归纳mydata中变量的信息 

#归纳mydata中变量的信息summary(mydata) id age gender heightMin.   :1.00   Min.   :10.00   Length:6           Min.   :1.0001st Qu.:2.25 1st Qu.:22.50 Class :character 1st Qu.:1.600Median :3.50 Median :35.00 Mode :character Median :1.650Mean :3.50 Mean :32.50 Mean :1.5673rd Qu.:4.75 3rd Qu.:43.75 3rd Qu.:1.700Max. :6.00 Max. :50.00 Max. :1.800

——左右滑动可以看全部代码

【注释】 

1. summary( )是R语言中最重要的、最常见的功能(Function)之一。


2. "summary(mydata)" 给出了每个变量的信息。


比如,age是一个数值型变量,R返回了6个重要参数:Min(最小值),1st Qu (第一四分位数),Median (中位数),Mean(均数),3rd Qu(第三四分位数) , Max (最大值)。


3. gender是一个字符型变量,因此R返回了3个参数:Length (长度,指几个字符),Class与Mode (Class与mode概念类似,提示gender是字符型)。


R语言精要-Dataframe篇·上


需要注意的是,R的最新版本4.0.0对于字符型数据的处理有变化,如果大家使用的R是小于4的版本,输出的结果会不一样。




今天dataframe开了一个头,因为dataframe是重中之重,所以我们分了几个篇幅聊。


除了dataframe,我们每天的文章中还有许多新的codes,比如head(), tail(),都是未来能用到的,希望大家能多加运用,多练习。



觉得我们的内容对你有帮助,请点赞转发关注。



R语言精要-Dataframe篇·上

- End -



往期精彩回顾




R语言精要-Dataframe篇·上

R语言精要-Dataframe篇·上

扫描二维码更精彩


     “善思耳—— 让临床科研与统计变得简单!



本文首发:善思耳 · SHANSIER
编辑:June君
转载与投稿:[email protected]
图片来源:谷歌/百度


                                    点击“在看”,多根头发!