R 线性回归函数创建列表而不是模型

R 线性回归函数创建列表而不是模型,r,R,我试图用R拟合lm模型。然而,出于某种原因,这段代码创建了一个数据列表,而不是通常的回归模型 我使用的代码就是这个 lm(Soc\u投票~包容性+基尼+联合国,数据=瑞典的一般包容性) 但是,与通常的系数不同,变量的标题以这种方式与数据混合: (Intercept) Inclusivity0.631 Inclusivity0.681 Inclusivity0.716 Inclusivity0.9 35.00 -4.00

我试图用R拟合lm模型。然而,出于某种原因,这段代码创建了一个数据列表,而不是通常的回归模型

我使用的代码就是这个
lm(Soc\u投票~包容性+基尼+联合国,数据=瑞典的一般包容性)

但是,与通常的系数不同,变量的标题以这种方式与数据混合:

     (Intercept)  Inclusivity0.631  Inclusivity0.681  Inclusivity0.716    Inclusivity0.9  
           35.00             -4.00             -6.74             -4.30              4.90

有人知道为什么会发生这种情况,以及如何修复它吗?

您看到的是一个名为num的
(带名称的数字向量)。您可以执行以下操作:

Model <-  lm(Soc_vote ~ Inclusivity + Gini + Un_den, data = general_inclusivity_sweden) # Assign the model to an object called Model
summary(Model) # Summary table
Model$coefficients # See only the coefficients as a named numeric vector
Model$coefficients[[1]] # See the first coefficient without name

您看到的是一个名为num的
(带名称的数字向量)。您可以执行以下操作:

Model <-  lm(Soc_vote ~ Inclusivity + Gini + Un_den, data = general_inclusivity_sweden) # Assign the model to an object called Model
summary(Model) # Summary table
Model$coefficients # See only the coefficients as a named numeric vector
Model$coefficients[[1]] # See the first coefficient without name

如果您能提供一个数据样本就好了,但我猜关键问题是
包容性
中的数字数据存储为一个因子。e、 g

library(tidyverse)
x <- tibble(incl = as.factor(c(0.631, 0.681, 0.716)), 
                         soc_vote=1:3)
lm(soc_vote ~ incl, x)

Call:
lm(formula = soc_vote ~ incl, data = x)

Coefficients:
(Intercept)    incl0.681    incl0.716  
          1            1            2  

请注意,我需要首先转换为字符,否则我只能得到每个因子的顺序等价物。

如果您可以提供数据样本,那就好了,但我猜关键问题是
包容性
中的数字数据存储为一个因子。e、 g

library(tidyverse)
x <- tibble(incl = as.factor(c(0.631, 0.681, 0.716)), 
                         soc_vote=1:3)
lm(soc_vote ~ incl, x)

Call:
lm(formula = soc_vote ~ incl, data = x)

Coefficients:
(Intercept)    incl0.681    incl0.716  
          1            1            2  

请注意,我需要首先转换为character,否则我只能得到每个因子的顺序等价物。

该调用并不能给出确切的结果。为了得到这个结果,您需要在一个看起来像
lm(y~Inclusivity,df)
的模型上调用
coef
(或等效值),其中
Inclusivity
是字符或因子,因此附加的数字是对比度。还要注意的是,这不是一个列表,而是一个数字向量。也许你想要
摘要(lm(Soc\u vote~Inclusivity+Gini+Un\u den,data=general\u Inclusivity\u sweden))
?这个调用并没有给出确切的结果。为了得到这个结果,您需要在一个看起来像
lm(y~Inclusivity,df)
的模型上调用
coef
(或等效值),其中
Inclusivity
是字符或因子,因此附加的数字是对比度。还请注意,这不是一个列表,而是一个数字向量。也许你想要
摘要(lm(Soc\u vote~Inclusivity+Gini+Un\u den,data=general\u Inclusivity\u sweden))
?这不是一个列表,这是一个数字向量是的,我刚刚更新了答案。结果是一个命名的数值向量。谢谢。那不是列表,是数字向量。是的,我刚刚更新了答案。结果是一个命名的数值向量。谢谢