前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安装读取的Excel的包

安装读取的Excel的包

作者头像
云深无际
发布2020-10-23 10:02:39
2K0
发布2020-10-23 10:02:39
举报
文章被收录于专栏:云深之无迹云深之无迹

截图安装过程的截图

找到下载目录

有点恐怖,安装了这么多

其实是事先安装了常用的库

代码语言:javascript
复制
‘C:\Users\CY-306\AppData\Local\Temp\RtmpyACZUs\downloaded_packages’

这个是Rstdio的安装界面

这个是下载的目录

选择了一个,安装(其实还没有被安装)

安装过程

总览

readxl软件包使从Excel到R的数据获取变得容易。与许多现有软件包(例如gdata,xlsx,xlsReadWrite)相比,readxl没有外部依赖性,因此在所有操作系统上都易于安装和使用。它旨在与表格数据一起使用。

readxl支持传统.xls格式和基于XML的现代.xlsx格式。所述libxls C库是用来支持.xls,其提取出大量的底层二进制格式的复杂性。为了解析.xlsx,我们使用RapidXML C ++库。

安装

从CRAN安装最新发行版本的最简单方法是安装整个tidyverse。

代码语言:javascript
复制
install.packages( “ tidyverse”)

注意:您仍然需要显式加载readxl,因为它不是通过加载的核心tidyverse软件包library(tidyverse)

或者,仅从CRAN安装readxl:

代码语言:javascript
复制
install.packages( “ readxl”)

或从GitHub安装开发版本:

代码语言:javascript
复制
#install.packages(“ devtools”)
devtools :: install_github(“ tidyverse / readxl”)

用法

代码语言:javascript
复制
库( readxl)

readxl包含几个示例文件,我们将在整个文档中使用它们。使用readxl_example()不带参数的帮助程序将其列出,或使用示例文件名进行调用以获取路径。

代码语言:javascript
复制
readxl_example()
#> [1]“ clippy.xls”“ clippy.xlsx”“ datasets.xls”“ datasets.xlsx”
#> [5]“ deaths.xls”“ deaths.xlsx”“ geometry.xls”“几何.xlsx“
#> [9]” type-me.xls“” type-me.xlsx“
readxl_example( ” clippy.xls“)
#> [1]” /Users/jenny/Library/R/3.6/library/readxl /extdata/clippy.xls”

read_excel() 读取xls和xlsx文件,并从扩展名中检测格式。

代码语言:javascript
复制
xlsx_example  <  -readxl_example(“ datasets.xlsx”)
 read_excel(xlsx_example)
 #>#小技巧:150 x 5
#> Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#> <dbl> <dbl> <dbl> <dbl> <chr>
#> 1 5.1 3.5 1.4 0.2 setosa
#> 2 4.9 3 1.4 0.2 setosa
#> 3 4.7 3.2 1.3 0.2 setosa
#>#…还有147行

xls_example  <  -readxl_example(“ datasets.xls”)
 read_excel(xls_example)
#>#小动作:150 x 5
#> Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#> <dbl> <dbl> <dbl> <dbl> <chr>
#> 1 5.1 3.5 1.4 0.2 setosa
# > 2 4.9 3 1.4 0.2 setosa
#> 3 4.7 3.2 1.3 0.2 setosa
#>#…还有147行

用列出工作表名称excel_sheets()

代码语言:javascript
复制
excel_sheets( xlsx_example)
#> [1]“ iris”“ mtcars”“ chickwts”“地震”

通过名称或编号指定工作表。

代码语言:javascript
复制
read_excel( xlsx_example, sheet  =  “ chickwts”)
#>#
轻笑:71 x 2 #>体重饲料
#> <dbl> <chr>
#> 1179蚕豆
#> 2160蚕豆
#> 3136蚕豆
#>#…具有68个以上的行
read_excel( xls_example, sheet  =  4)
#>#一个小动作:1,000 x 5
#> lat long depth magstations
#> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 -20.4 182. 562 4.8 41
#> 2 -20.6 181. 650 4.2 15
#> 3 -26 184. 42 5。4 43
#>#…还有997行

有多种方法可以控制读取哪些单元格。如果提供Excel样式的单元格范围,您甚至可以在此处指定工作表。

代码语言:javascript
复制
read_excel( xlsx_example, n_max  =  3)
#>#小技巧:3 x 5
#> Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#> <dbl> <dbl> <dbl> <dbl> <chr>
# > 1 5.1 3.5 1.4 0.2 setosa
#> 2 4.9 3 1.4 0.2 setosa
#> 3 4.7 3.2 1.3 0.2 setosa
read_excel( xlsx_example, range  =  “ C1:E4”)
#>#一个小技巧:3 x 3
#> Petal.Length Petal .Width种
#> <dbl> <dbl> <  chr>
#> 1 1.4 0.2 setosa
#> 2 1.4 0.2 setosa
#> 3 1.3 0.2 setosa
read_excel(xlsx_example,range  =  cell_rows(1:4))
 #>#一个小贴士:3 x 5
#> Sepal.Length Sepal.Width Petal。长度花瓣宽度种类
#> <dbl> <dbl> <dbl> <dbl> <chr>
#> 1 5.1 3.5 1.4 0.2 setosa
#> 2 4.9 3 1.4 0.2 setosa
#> 3 4.7 3.2 1.3 0.2 setosa
read_excel(xlsx_example,范围 =  cell_cols(“ B:D”))
 #>#小技巧:150 x 3
#> Sepal.Width花瓣长度(Petal.Length)花瓣宽度
#> <dbl> <dbl> <dbl>
#> 1 3.5 1.4 0.2
#> 2 3 1.4 0.2
#> 3 3.2 1.3 0.2
#>#…还有147行以上
read_excel(xlsx_example,range  =  “ mtcars!B1:D5”)
 #>#轻率:4 x 3
#> cyl disp hp
#> <dbl> <dbl> <dbl>
#> 1 6 160 110
#> 2 6 160 110
#> 3 4 108 93
#>#…还有1行

如果NAs由非空白单元格表示,则设置na参数。

代码语言:javascript
复制
read_excel( xlsx_example, na  =  “ setosa”)
#>#小技巧:150 x 5
#> Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#> <dbl> <dbl> <dbl> <dbl> <chr >
#> 1 5.1 3.5 1.4 0.2 <NA>
#> 2 4.9 3 1.4 0.2 <NA>
#> 3 4.7 3.2 1.3 0.2 <NA>
#>#…还有147行

如果您不熟悉用于数据导入的tidyverse约定,则可能需要查阅R for Data Science中的数据导入一章。readxl将与其他软件包(例如readr)越来越一致。

文章

这些文章解释了广泛的主题:

  • 单元格和列类型
  • 图纸几何:如何指定要读取的单元格
  • readxl工作流程:遍历多个选项卡或工作表,隐藏一个csv快照

我们还提供了一些重点文章,这些文章解决了全球电子表格提出的特定问题:

  • 列名
  • 多个标题行

特征

  • 无需外部依赖,例如Java或Perl。
  • 将非ASCII字符重新编码为UTF-8。
  • 将日期时间加载到POSIXct列中。Windows(1900)和Mac (1904)日期规格已正确处理。
  • 发现最小数据矩形并默认将其返回。用户可以发挥更多的控制rangeskipn_max
  • 默认情况下,列名和类型由工作表中的数据确定。用户还可以通过col_names和提供col_types名称,并通过来控制名称修复.name_repair
  • 返回tibble,即带有附加tbl_df类的数据框。除其他外,这提供了更好的打印效果。

其他相关配套

以下是一些其他软件包,这些软件包具有与readxl互补的功能,并且还避免了Java依赖性。

编写Excel文件:示例文件datasets.xlsxdatasets.xls是在openxlsx(和Excel)的帮助下创建的。openxlsx提供“编写,样式化和编辑工作表的高级界面”。

代码语言:javascript
复制
l  <- 列表(虹膜 = 虹膜,mtcars  =  mtcars,chickwts  =  cockwts,地震 = 地震)
 openxlsx :: write.xlsx(l,文件 =  “ inst / extdata / datasets.xlsx”)

writexl是该领域的新选择,于2017年8月在CRAN上首次发布。这是一种基于libxlsxwriter将数据帧导出到xlsx的可移植且轻量级的方法。它比openxlsx简约得多,但是在简单的示例上,它的速度似乎快两倍,并且可以写入较小的文件。

非表格数据和格式设置:tidyxl专注于从Excel导入尴尬和非表格数据。它还“以整洁的结构显示单元格内容,位置和格式以供进一步操作”。

请注意,readxl项目是与“参与者行为准则”一起发布的。通过对该项目做出贡献,您同意遵守其条款。

相关的读取界面

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-10-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云深之无迹 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 总览
  • 安装
  • 用法
  • 文章
  • 特征
  • 其他相关配套
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档