我正在尝试从 R 导出到 excel 具有两列的数据框,我想用 excel if 公式填充这些列,以便用户稍后可以更改阈值。我的问题是如何将类似以下 IF(C2>4; "YES";"NO") 的公式导出到新列的每个单元格到 Excel 中。
R代码:
library(openxlsx)
library(dplyr)
export_df<- mtcars %>% tibble::rownames_to_column(var="carname")
# Formulas in EXCEL IF(C>4; "YES";"NO") IF(E>100; "YES";"NO")
export_df$many_cyl <- paste(paste(paste0(paste0("IF(C" ,seq(2,nrow(export_df)+1 ,1))," > 4")," 'Yes' ", sep=";")," 'No') ", sep=";")
export_df$fast_car <- paste(paste(paste0(paste0("IF(E" ,seq(2,nrow(export_df)+1,1))," > 100")," 'Yes' ", sep=";")," 'No')", sep=";")
class(export_df$many_cyl) <- c(class(export_df$many_cyl), "formula")
class(export_df$fast_Car) <- c(class(export_df$fast_car), "formula")
openxlsx::addWorksheet(wb,sheetName ="mtcars" )
openxlsx::writeData(wb,"mtcars",export_df )
openxlsx::saveWorkbook(wb, "mtcars.xlsx")
我尝试创建 excel 公式的方式不起作用。该脚本在我将列声明为公式的步骤失败。创建单独向量并将它们导出到工作簿的第二种方法也不起作用。
我该如何解决这个问题?