如何将线性回归的 R 平方与组名一起记录到 R 中的数据框中?

How to record R Squareds of a linear regression together with the group name into a data frame in R?

我有一个线性回归,它使用城市作为 R 中的组:

pop_model <- lmList(Value ~ Year | City, data = df)

我可以使用以下方法制作相应 R 平方的向量:

r_squareds <- summary(pop_model)$r.squared

但这并没有给我城市的名称。所以,我不知道哪个 R-Squared 是哪个回归。我如何制作 table 来将这些 R 平方连同它们的名称一起记录到数据框中以获得这样的数据框?:

城市 | R 平方

您可以从 residualsnames 中提取城市名称。

data <- data.frame(city = names(pop_model$residuals),
                   R_squared = pop_model$r.squared)

使用 mtcars 数据集的示例。

library(nlme)

pop_model <- lmList(mpg ~ am | cyl, data = mtcars)

tmp <- summary(pop_model)

data <- data.frame(cyl = names(tmp$residuals), 
                   R_squared = tmp$r.squared)

data

#  cyl   R_squared
#1   4 0.287289249
#2   6 0.281055142
#3   8 0.002464789