1. tibble介绍
tibble是R语言中一个用来替换data.frame类型的扩展的数据框,tibble继承了data.frame,是弱类型的,同时与data.frame有相同的语法,使用起来更方便。tibble包,也是由Hadley开发的R包。
tibble对data.frame做了重新的设定:
- tibble,不关心输入类型,可存储任意类型,包括list类型
- tibble,没有行名设置 row.names
- tibble,支持任意的列名
- tibble,会自动添加列名
- tibble,类型只能回收长度为1的输入
- tibble,会懒加载参数,并按顺序运行
- tibble,是tbl_df类型
2. tibble安装
本文所使用的系统环境
- Win10 64bit
- R: 3.2.3 x86_64-w64-mingw32/x64 b4bit
tibble是在CRAN发布的标准库,安装起来非常简单,2条命令就可以了。
~ R
> install.packages('tibble')
> library(tibble)
RStudio官方把tibble项目,集成到了tidyverse项目中了,官方建议直接安装tidyverse项目,这样整个用来做数据科学的库都会被下载下来。
~ R
> install.packages('tidyverse')
> library(tidyverse)
#> Loading tidyverse: ggplot2
#> Loading tidyverse: tibble
#> Loading tidyverse: tidyr
#> Loading tidyverse: readr
#> Loading tidyverse: purrr
#> Loading tidyverse: dplyr
#> Conflicts with tidy packages ----------------------------------------------
#> filter(): dplyr, stats
#> lag(): dplyr, stats
1.tibble()函数使用一个向量来创建新tibble。
tibble()会自动重复长度为1的输入,并可以使用刚刚创建的新变量。
knitr::opts_chunk$set(echo = TRUE)
tibble(x=1:5,y=1,z=x^2+y)
2.对比tibble与data.frame
与dataframe()相比,tibble()函数的功能要少得多,它不能改变输入的类型、变量的名称,也不能创建行名称。
tibble和传统data.frame的使用方法主要由两处不同,打印和取子集。
取子集:
【】可以按名称或位置提取变量,$只能按名称提取变量。
df=tibble(x=runif(5),y=rnorm(5))
df
#按名称提取
df$x
df[['x']]
#按位置提取
df[[1]]