【发布时间】:2023-03-09 21:21:01
【问题描述】:
我的目标是将重复的部分添加到 .docx 文件中,通过从数据框中拉取连续部分中的值来更改它们。使用https://cran.r-project.org/web/packages/officer/vignettes/word.html 的示例代码,我已经能够添加一个单独的部分,但我无法弄清楚如何使此代码在循环中工作。
这是一个最小的例子:
library(officer)
library(magrittr)
lastRow <- 10
my_doc <- read_docx() %>%
for(rowNum in 1:lastRow){
body_add_par("ID: ") %>%
if(rowNum < lastRow){
slip_in_text(paste("ID:", rowNum)) %>%
}else{
slip_in_text(paste("ID:", rowNum))
}
print(my_doc, target = "sample.docx")
以下是我在控制台中看到的错误消息:
Error: unexpected '}' in:
" slip_in_text(paste("ID:", rowNum)) %>%
}"
> slip_in_text(paste("ID:", rowNum))
Error in x$default_styles : $ operator is invalid for atomic vectors
> }
Error: unexpected '}' in "}"
似乎很明显,问题来自于使用 %>% 运算符连接对 body_add_par 的连续调用,但我还没有找到解决方法。有没有其他人遇到过类似的问题并制定了解决方案?
谢谢。
【问题讨论】: