美文网首页
【R for Data Science】(2) tibble

【R for Data Science】(2) tibble

作者: Chanic | 来源:发表于2019-07-25 15:19 被阅读0次

    参考:

    1. tibble in <R for data science>
    2. tibble in R
    3. tibble in tidyverse

    tibbles 是一种不同于 data.frame 对象的数据框对象,特点是将字符向量转化为因子的形式。

    1. R 或 RStudio 中安装所需要的包

    # The easiest way to get tibble is to install the whole tidyverse:
    install.packages("tidyverse")
    
    # Alternatively, install just tibble:
    install.packages("tibble")
    
    # Or the the development version from GitHub:
    # install.packages("devtools")
    devtools::install_github("tidyverse/tibble")
    
    # and then library
    library(tidyverse)   ## or library(tibble)
    

    2. 创建 tibbles

    2.1 已有 data.frame结构的数据,可以直接使用as_tibble()函数进行转换

    as_tibble.png

    2.2 自定义创建

    t1 <- tibble(
           x = 1:5, 
           y = 1, 
          z = x ^ 2 + y)
    t1
    t2 <-  tibble(
            `:)` = "smile", 
            ` ` = "space",
           `2000` = "number")
    t2
    t3 <- tribble(
          ~x, ~y, ~z,
         #--|--|---- 
         "a", 2, 3.6,
         "b", 1, 8.5)
    t3
    
    自定义创建.png

    3. tibbles vs. data.frame

    区别主要在 printingsubsetting 方面

    3.1 输出(printing)

    tibble 结果显示前10行,如下:

    结果显示.png
    使用 print() 函数,能够通过其中的 n 参数控制输出结果的行数, width 参数控制输出的列数:
    print控制行数.png
    设置 options():
    • options(tibble.print_max = n, tibble.print_min = m)只输出 m 行如果有大于 n 行
    • options(tibble.print_min = Inf) 显示所有行
    • options(tibble.width = Inf) 显示所有列

    3.2 提取子集(subsetting)

    单一行列的提取 $[[
    [[ can extract by name or position; $ only extracts by name but is a little less typing.

    df <- tibble(
      x = runif(5),
      y = rnorm(5))
    df
    # Extract by name
    df$x
    df[["x"]]
    
    # Extract by position
    df[[1]]
    
    subset.png
    如果加上magrittr 的 pipe ,则需要用上 “ . ”:
    df %>% .$x
    df %>% .[["x"]]
    
    subset with .

    4. 与 data.frame进行转换:

    as.data.frame()
    as_tibble()

    相关文章

      网友评论

          本文标题:【R for Data Science】(2) tibble

          本文链接:https://www.haomeiwen.com/subject/jpueoqtx.html