tidyverse —— readxl包

浏览: 1714

readxl包,读取Excel文件专用包,有和tidyverse核心包一样的特点,快!效率特高!

话说Hadley大叔出品就没有效率低的,可能键盘是借来的,着急还。

独立性高,不外部依赖Java啥的,xls和xlsx文件读取都可以。

library(readxl)

一个提醒,因为本包不是tidyverse的核心包,所以,不像readr包一样,library(tidyverse)后就可以直接使用,还是要单独载入的。

现在进入正题了,有这么一个文件mydata.xlsx,内有两个表单,数据有缺失,各行的列数不一,要读取其中第二个表单的数据。

Clipboard Image.png


  • 明确文件内表单
  • excel_sheets('mydata.xlsx')
    #[1] "Sheet1" "Sheet2"

    这函数用来列示文件中的表单名,之后就可以针对表单进行读取数据。

  • 表单数据读取
  • f <- read_excel('mydata.xlsx', sheet = "Sheet2", col_names = F)
    view(f)

    Clipboard Image.png

    col_names表示是否以第一行作为变量名,可以给出一个向量自定义列名。sheet如果不声明的话,就默认读取第一张表单。read_excel自行截取最小的能够囊括所有观测值的矩阵范围进行读取,所以不用太担心各行变量列数不同而没有读取完整数据。

  • 选取读取范围
  • 如果想要读取选定的范围的数据,则可以在range里声明。比如只读取第一张表单中的前三行前四列的数据:

    (f <- read_excel('mydata.xlsx', sheet = "Sheet2", col_names = F,
    range = 'A1:D3'))

    Clipboard Image.png

    推荐 2
    本文由 野菜团子 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
    转载、引用前需联系作者,并署名作者且注明文章出处。
    本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

    2 个评论

    有没有R for Data Science的中文版呢,英文版读起来太不容易了。
    我没有。来吧老铁,一起干大事,边看边翻译,造福后人

    要回复文章请先登录注册