【问题标题】:Adding Tables w/o Column Headers in Officer在官员中添加不带列标题的表格
【发布时间】:2023-03-24 11:49:01
【问题描述】:

尝试使用官员从 .docx 文档中的数据框中添加表格,但不包括列标题的行。在将数据框添加到文档之前,我尝试从数据框中删除列名,但这没有奏效,并导致 gobbly-gook 添加到顶行而不是顶行,只是不存在。关于如何实现这一点的任何想法?

NarrativeDoc <- read_docx()
tmp = data.frame(RowHead1=c('Fact 1','Fact 2'),
                 RowHead2=c("I like chicken","I am not a chicken"),
                 stringsAsFactors =FALSE)
names(tmp)=NULL
NarrativeDoc <- body_add_table(NarrativeDoc,tmp)
print(NarrativeDoc,
      target="C:\\Users\\jclark_v\\Documents\\R\\TestNoHeader.docx")

【问题讨论】:

    标签: r officer


    【解决方案1】:

    我已将参数头添加到body_add_table(您需要从 github 更新)

    NarrativeDoc <- read_docx()
    tmp = data.frame(RowHead1=c('Fact 1','Fact 2'),
                     RowHead2=c("I like chicken","I am not a chicken"),
                     stringsAsFactors =FALSE)
    NarrativeDoc <- body_add_table(NarrativeDoc,tmp, header = FALSE)
    NarrativeDoc <- body_add_par(NarrativeDoc, "")
    NarrativeDoc <- body_add_table(NarrativeDoc,tmp, header = TRUE)
    print(NarrativeDoc,
          target="TestNoHeader.docx")
    

    【讨论】:

    • 感谢这个包的解决方案和开发。我想出的另一个解决方案是使用 flextable,加载数据帧减去第一行,并使用 set_header_labels 函数将 flextable 的标题作为数据的第一行。
    • 稍后我将添加一个选项以从 flextable 中删除标题。
    猜你喜欢
    • 1970-01-01
    • 2020-12-22
    • 2021-08-31
    • 2018-11-16
    • 2017-07-27
    • 1970-01-01
    • 2019-02-02
    • 1970-01-01
    • 2017-02-02
    相关资源
    最近更新 更多