如何将R语言中的表格数据输出为Excel文件

Python016

如何将R语言中的表格数据输出为Excel文件,第1张

你好

需要导入 包rJava和xlsx

运用函数write.xlsx:格式:write.xlsx(x, file, sheetName="Sheet1",col.names=TRUE, row.names=TRUE, append=FALSE, showNA=TRUE)

x为数据集,file为文件名(导出到默认文件夹,通过过getwd()查询默认目录,setwd()修改目录)

还可以运用函数write.cxv:格式:write.csv(x, file)

R语言Excel文件

Microsoft Excel是使用最广泛的电子表格程序,它是以.xls或.xlsx格式存储数据。 R可以使用某些excel特定的包直接读取这些文件的内容。一些常用的软件包有 - XLConnect,xlsx,gdata等。在这个篇文章中,我们将使用xlsx软件包。 R也可以使用这个包写入excel文件。

安装xlsx软件包

可以在R控制台中使用以下命令来安装xlsx软件包。它可能会要求安装一些这个包所依赖的附加包。按照相同的命令与所需的包名来安装附加的包。

install.packages("xlsx")

R

验证并加载“xlsx”软件包

使用以下命令来验证和加载xlsx包。参考以下代码 -

# Verify the package is installed.

any(grepl("xlsx",installed.packages()))

# Load the library into R workspace.

library("xlsx")

R

当脚本运行时,得到以下输出 -

[1] TRUE

Loading required package: rJava

Loading required package: methods

Loading required package: xlsxjars

Shell

注: 如果第一个输出结果为:FALSE,请 install.packages("xlsx") 语句重新加载安装。

准备xlsx文件用作为输入

打开Microsoft excel。将以下数据复制并粘贴到名为sheet1的工作表中。

idname salarystart_datedept

1Rick 623.31/1/2012IT

2Dan 515.2 9/23/2013 Operations

3Michelle 61111/15/2014IT

4Ryan 7295/11/2014HR

5Gary 843.253/27/2015Finance

6Nina 578 5/21/2013IT

7Simon 632.87/30/2013Operations

8Guru 722.56/17/2014Finance

Txt

如下所示 -

如下所示 -

还将以下数据复制并粘贴到另一个工作表,并将此工作表重命名为city。

name city

Rick Seattle

Dan Tampa

Michelle Chicago

Ryan Seattle

Gary Houston

Nina Boston

Simon Mumbai

Guru Dallas

如下所示 -

将Excel文件另存为“input.xlsx”,应该将此文件保存在R工作区的当前工作目录中。

读取Excel文件

使用read.xlsx()函数读取input.xlsx,如下所示,结果作为数据帧存储在R环境中。

# Read the first worksheet in the file input.xlsx.

data <- read.xlsx("input.xlsx", sheetIndex = 1)

print(data)

R

当我们执行上述代码时,会产生以下结果 -

id name salary start_date dept

1 1 Rick 623.30 2012-01-01 IT

2 2 Dan 515.20 2013-09-23 Operations

3 3 Michelle 611.00 2014-11-15 IT

4 4 Ryan 729.00 2014-05-11 HR

5 NA Gary 843.25 2015-03-27Finance

6 6 Nina 578.00 2013-05-21 IT

7 7Simon 632.80 2013-07-30 Operations

8 8 Guru 722.50 2014-06-17Finance

可以,不过我没有发现比较容易的办法,您提到的这个功能很好用,可以随意改变报表的结构而不需要拆分单元格,可以把excel的数据变成图片的格式,这个图片可以根据目标的单元格的数据改变而改变,同时具有图片的特性,可以灵活调整大小等等,非常的灵活和方便。步骤如下: 1、插入-对象 2、选择 位图图像 3、然后确定:此时可以在excel看到一个空白的位图 4、点击空白位图(此时单元格的值为=EMBED("Paint.Picture","") 5、把=EMBED("Paint.Picture","")变成=A1:C10,此时就可以把A1到C10的数据变成图片了=A1:C10可以随便改变的。 顺便提一下,此位图具有画图的功能,可以在上边画一些特殊的图像。 有更简单的方法请告知我(以前一个朋友告诉我使用什么照相机等等可以实现)!谢谢