【问题标题】:Converting linear regression output in r在 r 中转换线性回归输出
【发布时间】:2021-07-22 17:38:07
【问题描述】:

我的数据是两个数据框的列表,如下所示:

[[1]]
   Column  strain     N       calc        concentration
1       2  MG         3       1128.727    0.9765625
2       3  MG         3       2577.353    1.9531250
.
.
.

[[2]]
   Column strain    N        calc          concentration
1       2 MG        3        29.14334      0.9765625
2       3 MG        3        65.52667      1.9531250
.
.
.

我正在对此进行线性回归:

linear_regression <- 
     lapply(standardcurve_concentration, 
            lm, 
            formula = calc ~ concentration)

之后,我想得到每个线性回归的系数。

我正在使用简单的任务来获取系数:

linear_regression_sum <- 
  lapply(linear_regression, 
         coef)

输出如下:

[[1]]
  (Intercept) concentration 
   12194.0968      703.3598 

[[2]]
  (Intercept) concentration 
     49.20808      30.91862 

但我想为这个线性回归提供两个单独的数据框:

[[1]]
    Intercept       concentration 
1   12194.0968      703.3598 

[[2]]
     Intercept      concentration 
1     49.20808      30.91862 

因为我想在进一步计算中使用这两个系数。 我怎样才能做到这一点?

【问题讨论】:

标签: r


【解决方案1】:

我不太了解这种线性回归的 lapply 结构,但这里有一些代码可能指向正确的方向。

library(broom)


linear_regression_one <- lm(mpg ~ wt, mtcars) 
            
linear_regression_one$coefficients

tidy_linear_regression_one <- tidy(linear_regression_one)

tidy_linear_regression_one_estimate <- tidy_linear_regression_one$estimate


linear_regression_two <- lm(mpg ~ am, mtcars) 
            
linear_regression_two$coefficients

tidy_linear_regression_two <- tidy(linear_regression_two)

tidy_linear_regression_two_estimate <- tidy_linear_regression_two$estimate

regression_estimates <- rbind(tidy_linear_regression_one_estimate, tidy_linear_regression_two_estimate)

【讨论】:

    【解决方案2】:

    您可以在单个 lapply 调用中执行此操作,将数字向量从 coef 转换为数据帧。

    result <- lapply(standardcurve_concentration, function(x) {
      as.data.frame(t(coef(lm(calc ~ concentration, x))))
    }) 
    

    【讨论】:

      猜你喜欢
      • 2021-02-20
      • 2013-02-11
      • 1970-01-01
      • 2019-04-12
      • 2018-05-20
      • 2021-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多