R 用于跨列循环并保存到变量中

R 用于跨列循环并保存到变量中,r,for-loop,R,For Loop,我希望系数在数据帧的所有列上循环。我想把这个输出保存到一个变量中,我可以把它放在一个数据框中,所有的值都可以放在一列中 打印输出显示许多NA。如何在过程中消除此问题 比如: Co_data <- (Looped values) Co_data我不知道您的数据集的结构(请编辑您的问题以添加一部分数据) 但是,如果要提取所有列的lm函数acc的系数,可以执行以下操作: 数据: df mpg气缸显示hp drat wt qsec与am齿轮carb 马自达RX421.06160.01103.90

我希望系数在数据帧的所有列上循环。我想把这个输出保存到一个变量中,我可以把它放在一个数据框中,所有的值都可以放在一列中

打印输出显示许多NA。如何在过程中消除此问题

比如:

Co_data <- (Looped values)

Co_data我不知道您的数据集的结构(请编辑您的问题以添加一部分数据)

但是,如果要提取所有列的
lm
函数acc的系数,可以执行以下操作:

数据:

df
mpg气缸显示hp drat wt qsec与am齿轮carb
马自达RX421.06160.01103.902.62016.46014
马自达RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4
Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 4 1
大黄蜂4路21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
大黄蜂运动约18.7 8 360.0 175 3.15 3.440 17.02 0 3 2
Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
除尘器360 14.3 8 360.0 245 3.21 3.570 15.84 0 3 4
Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2
Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2
Merc 280 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4 4
然后,您可以
df
上应用
lm
函数,方法是:(这里,我们将通过将每列与
mpg
列进行比较来计算
lm

mod
mpg气缸显示高压拖动
4.493867e-15 1.470741e+01 6.987361e+02 4.449931e+02 1.866482e+00
wt qsec vs am齿轮
4.834655e+00 1.035858e+01-1.135418e+00-6.882239e-01 1.195054e+00
碳水化合物
6.021719e+00
最后,您可以使用以下方法创建数据帧:

final_df=data.frame(条件=colnames(df),系数=mod)
它回答了你的问题吗

编辑-删除NA

如果您有一些NA值,可以通过执行以下操作将其删除:

mod
mod1 <- lm(starling_farm ~ years, data = L_farmland_frame)

for(i in colnames(L_population.frame)){

print(c(mod1$coefficients[i], 
mod2$coefficients[i], 
mod3$coefficients[i], 
mod4$coefficients[i], 
mod5$coefficients[i], 
mod6$coefficients[i], 
mod7$coefficients[i], 
mod8$coefficients[i], 
mod9$coefficients[i], 
mod10$coefficients[i], 
mod11$coefficients[i], 
mod12$coefficients[i], 
mod13$coefficients[i], 
mod14$coefficients[i], 
mod15$coefficients[i], 
mod16$coefficients[i],
mod17$coefficients[i]))} ```


Output value:

```years       years       years       years       years 
-0.17263280 -0.16783959  0.04566027 -0.11492727 -0.11345848 
      years       years       years       years       years 
-0.15713866 -0.11703737 -0.08202416 -0.25307321 -0.07794717 
      years       years       years       years       years 
-0.07591691 -0.12998199 -0.10227772 -0.03500562 -0.10366356 
      years       years 
-0.13475428 -0.14861171 
<NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> 
  NA   NA   NA   NA   NA   NA   NA   NA   NA   NA   NA   NA 
<NA> <NA> <NA> <NA> <NA> 
  NA   NA   NA   NA   NA 
<NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> 
  NA   NA   NA   NA   NA   NA   NA   NA   NA   NA   NA   NA 
....
....