使用R操作Excel文件

时间:2019-01-29 17:51:39

标签: r excel

我想使用R编辑现有的excel文件。例如,ExcelFile_1具有数据,并且我需要将数据从ExcelFile_1放入另一个名为ExcelFile_2的文件中。这是基于列和行的名称。
ExcelFile_1:
商店发货数量
1111 100
2222 200

ExcelFile_2:
商店发货数量
1111
2222

如果我正在使用数据框,我通常会做
ExcelFile_2 $ Shipped Qty <- ExcelFile_1 $ Shipped Qty [match(ExcelFile_1 $ Store #,ExcelFile_2 $ Store #

以上行适用于我的数据框,但我不知道在使用XLConnect包写入工作表时如何放置此公式。我所看到的是下面提到的选项。 writeWorksheet(object,data,sheet, startRow startCol ,标题,行名)

由于要保留ExcelFile_2格式,我不想在现有/新的Excel文件中作为数据框进行编辑并将数据框另存为另一个“工作表”。
例如:我想使用另一个工作表中的值来更改ExcelFile_2单元格“ B2”的值。

有人可以帮我解决上述问题吗?

1 个答案:

答案 0 :(得分:0)

假设文件存储在主目录中,并分别命名为one.xlsxtwo.xlsx,则可以执行以下操作:

library(XLConnect)

# Load content of the first sheet of one.xlsx
df1 <- readWorksheetFromFile("~/one.xlsx", 1)

# Do what you like to df1 ...

# Write df1 to the first sheet of two.xlsx
wb2 <- loadWorkbook("~/two.xlsx")
writeWorksheet(wb2, df1, sheet = 1)
saveWorkbook(wb2)

如果需要,您还可以在startRowstartCol中使用readWorksheetFromFile()writeWorksheet()来指定确切的行和列,并使用header来指定是否想读/写标题。