r - 将表格从 R 获取到 Libre Office Writer 的最佳方法?

标签 r excel csv libreoffice libreoffice-calc

目前,我的工作流程是在 R 中进行统计和数据重组,并使用 Libre Office (LO) Writer 编写文档。 R 中的分析结果通常是表格,我需要将它们放入 LO Writer。我还没有找到直接以简单的方式执行此操作的方法,所以我通常做的是:1)将表格放在 R 中,2)将表格导出为 .csv,3)在 LO Calc 中打开 .csv,4)使用特殊粘贴作为 RTF 从 LO Calc 复制到 LO writer。

保存到 .csv 时,我使用 write.csv(table_1, "table_1.csv", na = "") .这导致了一个额外的步骤,因为 LO Calc 需要知道如何读取 .csv 文件。或者,可以 install one of the packages用于输出到 .ods 或 .xls(x)。

这样做的一个问题是,这通常会导致文件中的十进制数字非常长,例如2.21931,而通常只想在文档中显示 2 或 3 位数字。对于这种烦恼,我找到了两种解决方案。

第一个是使用例如四舍五入 R 中的数字。 round(table_1, 2)然后使用上述命令保存。这样做的问题是,当将其导入 LO Calc 时,0.60 之类的数字将变为 0.6,失去一个(冗余)数字。这使得呈现有些不一致。可以将它们添加回文档中的表格或使用 LO Calc 中的舍入函数。

第二种是使用 Libre Office Calc 中的舍入功能,但这需要一些额外的工作/更多的工作。

最后,当重要的表格像这样进入 LO Writer 时,表格会有不可见的边框。必须为每个表手动添加这些。

在避免有效数字问题和额外点击的同时,将结果表从 R 获取到 LO Writer 的最佳方法是什么?

最佳答案

尝试在 R 中进行格式化具有 sprintf() 等功能.
这是我发现控制数字显示的最佳方式。
下面的 url 有很好的工作示例。

http://www.cookbook-r.com/Strings/Creating_strings_from_variables/

另外,考虑 knitr包以即时创建文档。

关于r - 将表格从 R 获取到 Libre Office Writer 的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30814665/

相关文章:

R:创建组内元素的组合,并将与新数据框中的组合相关的数字相加

arrays - Excel - 查找列中不是错误或空白的最后一个值

vba - 使用 VBA 将范围添加到现有 PrintArea 失败并出现错误 400

python - 将 Pandas Dataframe 中的数据行输入到 csv 文件中的下一个空行

c# - 使用 csv helper 将集合的集合写入 csv 文件

R Split data.frame 使用代表和开/关开关的列

r - 对于每一行,将特定列(由另一个数据框定义)中的值替换为向量中的值

r - 使用 R Shiny 创建问卷

excel - 为每个选定的 Excel 工作表创建一个 pdf

将 ÆØÅ 等特殊字符读入 R (Rstudio)