【问题标题】:Manipulating Excel files using R使用 R 操作 Excel 文件
【发布时间】:2019-01-29 17:51:39
【问题描述】:

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

ExcelFile_2:
商店发货数量
1111
第2222章

如果我正在使用数据框,我通常会这样做
ExcelFile_2$Shipped Qty Shipped Qty[匹配(ExcelFile_1$Store #, ExcelFile_2$Store #)

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

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

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

【问题讨论】:

    标签: r excel


    【解决方案1】:

    假设您的文件存储在您的主目录中并命名为 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)
    

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-24
      相关资源
      最近更新 更多