←
PDF 147 / 520 Tibbles Versus data.frame
→
English · PDF 147
Original PDF page 147
中文 · PDF 147

#> # A tibble: 1 × 3 #> :) 2000 #> #> 1 smile space number

在其他包(如 ggplot2、dplyr 和 tidyr)中使用这些变量时,你同样需要反引号。

另一种创建 tibble 的方法是使用 tribble(),它是 transposed tibble(转置 tibble)的缩写。tribble() 专为在代码中录入数据而定制:列标题由公式定义(即以 ~ 开头),各条目之间用逗号分隔。这使得可以以易于阅读的形式排布少量数据:

tribble( ~x, ~y, ~z, #--|--|---- "a", 2, 3.6, "b", 1, 8.5 ) #> # A tibble: 2 × 3 #> x y z #> #> 1 a 2 3.6 #> 2 b 1 8.5

我通常会添加一条注释(以 # 开头的行),以便非常清楚地标明表头所在的位置。

tibble 与 data.frame 的对比

tibble 与经典 data.frame 在使用上有两个主要区别:打印和取子集。

打印

tibble 有一套精炼的打印方法,只显示前 10 行,以及所有能适应屏幕宽度的列。这使得处理大型数据容易得多。除了列名之外,每一列还会报告其类型,这是借鉴自 str() 的一个不错的特性:

tibble( a = lubridate::now() + runif(1e3) * 86400, b = lubridate::today() + runif(1e3) * 30, c = 1:1e3, d = runif(1e3), e = sample(letters, 1e3, replace = TRUE) )