【问题标题】:Linear regression output "Call Formula" can't be exported to csv file线性回归输出“调用公式”无法导出到 csv 文件
【发布时间】:2018-01-29 17:58:32
【问题描述】:

我正在开发一个 for 函数,该函数使用输入数据生成多个线性回归模型 a~c。此数据生成工作得很好,但是,我需要将生成的数据导出到 csv 文件。我正在使用 tydy() 和 Glance () 函数来获取 p 值、截距、r2 等。这部分代码工作正常,但是输出文件没有为我提供线性的“调用公式:”回归,所以我在解释输出时遇到问题......有人可以告诉我,如何让调用公式成为 csv 文件的标题?

【问题讨论】:

  • 尝试将公式另存为数据框中新列中的字符/字符串变量,然后将其另存为 csv 文件。试试这个简单的例子library(broom); frml = 'disp ~ hp + cyl'; m = lm(frml, data = mtcars); dt_m = tidy(m); dt_m$frml = frml; dt_m
  • 寻求帮助时,您应该包含一个简单的reproducible example,其中包含可用于测试和验证可能解决方案的示例输入和所需输出。

标签: r csv output linear-regression


【解决方案1】:

我不认为 csv 文件有一个单一的标题,您可以将 call 保存到但如果您只是想捕获对 lm 的调用以及结果(使用 mtcars 数据,因为您没有提供很多上下文):

library(broom)
m = lm(disp ~ hp + cyl, data = mtcars)
xxx<-tidy(m)
xxx$call<-toString(m$call)
xxx

生产...

         term     estimate  std.error  statistic      p.value                        call
1 (Intercept) -144.5694333 37.6522356 -3.8395976 6.173165e-04 lm, disp ~ hp + cyl, mtcars
2          hp    0.2358181  0.2578106  0.9146953 3.678948e-01 lm, disp ~ hp + cyl, mtcars
3         cyl   55.0625843  9.8975401  5.5632595 5.310020e-06 lm, disp ~ hp + cyl, mtcars

【讨论】:

    猜你喜欢
    • 2016-02-17
    • 2021-02-20
    • 1970-01-01
    • 2021-10-01
    • 2016-04-20
    • 2019-04-12
    • 2013-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多