【问题标题】:Is it possible to copy/paste R regression summary to Excel without using functions?是否可以在不使用函数的情况下将 R 回归摘要复制/粘贴到 Excel?
【发布时间】:2020-07-11 10:44:53
【问题描述】:
fit.iris.lm <- lm(Sepal.Length ~ Petal.Length + Petal.Width, iris)
summary(fit.iris.lm)

这给了我们以下输出:

我正在寻找一种将系数表从 R 控制台复制/粘贴到 Excel 的方法,方法是突出显示该表,然后将其 Ctrl+C/Ctrl+V-ing 到 Excel 中。

但是,在将其粘贴到 Excel 中时,所有列都被压缩为一列:

我正在寻找一种方法将此输出复制/粘贴到 Excel 中,并保留所有列(估计值、标准错误)而不是浓缩在一个列中,我特别正在寻找一种方法这样做不使用任何 R 函数来导出表格(如 write_xlsx) 或任何其他类似函数 - 我只想复制和粘贴它。

【问题讨论】:

    标签: r excel


    【解决方案1】:

    您无法避免使用 any 函数,但如果您只是想要一些可以整齐粘贴的内容,您可以使用 broom::tidy() 将值转换为 tibble 并使用 clipr::write_clip() 将其复制到剪贴板。

    library(broom)
    library(clipr)
    library(magrittr)
    
    lm(Sepal.Length ~ Petal.Length + Petal.Width, iris) %>%
      tidy() %>%
      write_clip()
    

    粘贴到 Excel 中:

    【讨论】:

    • 我经常使用以下代码将其放入 Excel:summary(fit.iris.lm)$coefficients %&gt;% data.frame() %&gt;% rownames_to_column() %&gt;% full_join(lm.beta(fit.iris.lm)$coefficients %&gt;% data.frame() %&gt;% colnames("Beta") %>% rownames_to_column()) %>% slice(-1) %>% select(rowname, Estimate, Beta, Std..Error, t.value, Pr...t..) %>% colnames(c("Predictor", "B", "Beta", "SDB", "t", "p")) %>% mutate_at(vars(B:p), round, 3) %>% write_excel_csv2("Stres_Step.csv") 但正在寻找一种无需编码的方法。还是谢谢
    【解决方案2】:

    您也可以在 Excel 端进行清理。将其粘贴到 Excel 中后,选择粘贴的文本。在功能区的“数据”选项卡上,选择“文本到列”。

    这将打开一个对话框。将其保留在“固定宽度”,然后单击“下一步”。

    这应该让您预览它划分列的方式。对于您的示例,这很好,因此只需单击“完成”即可。

    你会得到我认为你想要的结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-06
      • 1970-01-01
      • 2017-01-25
      • 2014-07-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多