《数据科学:R语言实现》——2.5 使用Excel文件

简介:

本节书摘来自华章计算机《数据科学:R语言实现》一书中的第2章,第2.5节,作者 丘祐玮(David Chiu),更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.5 使用Excel文件

Excel是另一种存储和分析数据的常用工具。当然,我们可以把Excel文件转化为CSV文件或者其他文件格式。你也可以在R中安装加载xlsx程序包,来读取和处理Excel数据。

准备工作

在本教程中,你需要给开发环境安装R,同时确保计算机可以访问互联网。

实现步骤

执行下列步骤,读取Excel文档。

1.首先,安装加载xlsx程序包:
image

2.访问www.data.worldbank.org/topic/economy-and-growth 找到世界经济指标Excel文件,如图6所示。

image

3.使用download.file从下列URL中下载世界经济指标数据:
image

4.使用Excel(或Open Office)查看下载的文件,如图7所示。

image

5.你可以使用read.xlsx2从下载的Excel文件中读取数据:
image

6.从读取的数据中选取国家名、国家码、指标名、指标码以及2014年度:
image

7.然后,你可以使用函数dim查看文件的维度:
image

8.最后,你可以把过滤的数据写入名为2014wbdata.xlsx的文件中:
image

运行原理

在本教程中,我们介绍了如何使用xlsx程序包读取和写入包含世界经济指标的Excel文件。首先,我们需要安装加载xlsx程序包。它允许用户通过R命令,使用Java POI包,读取和写入Excel文件。因此,要使用Java POI包,我们也需要同时安装rJava和xlsxjars。你可以在libraryxlsx]jarsjava下找到Java POI的.jar文件。以作者的计算机为例,它安装了Windows 7操作系统,.jar文件位于C:Program FilesRR-3.2.1libraryxlsxjarsjava路径下。

然后,我们使用函数download.file从链接 http://data.worldbank.org/topic/economy-and-growth 下载世界经济指标数据。download.file默认下载文件为ASCII编码。要下载二进制文件,我们需要设定下载模式为wb。

下载Excel文件之后,我们可以使用Excel查看。Excel文件的截图说明经济指标从第1页的第4行开始。因此,我们可以使用函数read.xlsx2从这个位置读取数据。xlsx程序包提供了两个函数来读取Excel中的数据:read.xlsx和read.xlsx2。因为函数read.xlsx2主要处理Java中的数据,因此read.xlsx2的性能要好些(特别的,read.xlsx2在处理多于100000个数值的数据集时相当快)。

当把工作单的内容都读取到R的数据框后,我们可以从R数据框中选取变量Country.Name、Country.Code、Indicator.Name、Indicator.Code和X2014,然后使用函数dim查看数据框的维度。最后,我们可以使用write.xlsx2把转换后的数据写入一个Excel文件2014wbdata.xlsx中。

相关文章
|
14天前
|
Python
按条件将Excel文件拆分到不同的工作表
使用Python的pandas库,可以轻松将Excel文件按条件拆分到不同的工作表中。本文通过一个示例代码展示了如何生成一个包含总成绩表和三个班级表的Excel文件。代码首先创建了一个包含学生姓名、班级和各科成绩的数据框,然后按班级分组,将每个班级的数据分别写入不同的工作表。最后,生成的Excel文件将包含四个工作表,分别为总成绩表和三个班级的成绩表。
25 6
按条件将Excel文件拆分到不同的工作表
|
13天前
|
Python
批量将不同的工作簿合并到同一个Excel文件
本文介绍如何使用Python的`pandas`库批量合并不同工作簿至同一Excel文件。通过模拟生成三个班级的成绩数据,分别保存为Excel文件,再将这些文件合并成一个包含所有班级成绩的总成绩单。步骤包括安装必要库、生成数据、保存与合并工作簿。
23 6
|
13天前
|
Python
按条件将Excel文件拆分到不同的工作表
使用Python的pandas库,可以轻松将Excel文件按条件拆分为多个工作表。本文通过一个具体示例,展示了如何根据学生班级将成绩数据拆分到不同的工作表中,并生成一个包含总成绩表和各班级成绩表的Excel文件。代码简洁明了,适合初学者学习和应用。
28 6
|
22天前
|
前端开发
实现Excel文件和其他文件导出为压缩包,并导入
实现Excel文件和其他文件导出为压缩包,并导入
25 1
|
1月前
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
45 4
|
2月前
|
JavaScript 前端开发 数据处理
Vue导出el-table表格为Excel文件的两种方式
Vue导出el-table表格为Excel文件的两种方式
82 6
|
2月前
|
easyexcel Java UED
SpringBoot中大量数据导出方案:使用EasyExcel并行导出多个excel文件并压缩zip后下载
在SpringBoot环境中,为了优化大量数据的Excel导出体验,可采用异步方式处理。具体做法是将数据拆分后利用`CompletableFuture`与`ThreadPoolTaskExecutor`并行导出,并使用EasyExcel生成多个Excel文件,最终将其压缩成ZIP文件供下载。此方案提升了导出效率,改善了用户体验。代码示例展示了如何实现这一过程,包括多线程处理、模板导出及资源清理等关键步骤。
|
2月前
|
数据处理 Python
Python 高级技巧:深入解析读取 Excel 文件的多种方法
在数据分析中,从 Excel 文件读取数据是常见需求。本文介绍了使用 Python 的三个库:`pandas`、`openpyxl` 和 `xlrd` 来高效处理 Excel 文件的方法。`pandas` 提供了简洁的接口,而 `openpyxl` 和 `xlrd` 则针对不同版本的 Excel 文件格式提供了详细的数据读取和处理功能。此外,还介绍了如何处理复杂格式(如合并单元格)和进行性能优化(如分块读取)。通过这些技巧,可以轻松应对各种 Excel 数据处理任务。
243 16
|
2月前
|
JSON 数据格式
LangChain-20 Document Loader 文件加载 加载MD DOCX EXCEL PPT PDF HTML JSON 等多种文件格式 后续可通过FAISS向量化 增强检索
LangChain-20 Document Loader 文件加载 加载MD DOCX EXCEL PPT PDF HTML JSON 等多种文件格式 后续可通过FAISS向量化 增强检索
116 2
|
3月前
R Excel 文件
Excel 格式的文件主要是 xls 或 xlsx,这两种文件可以在 R 语言中导入 xlsx 库来实现直接的读取。
66 23