相关疑难解决方法(0)

数据框中变量之间的快速成对简单线性回归

我已经在Stack Overflow上多次看到成对或一般配对的简单线性回归.这是一个针对此类问题的玩具数据集.

set.seed(0)
X <- matrix(runif(100), 100, 5, dimnames = list(1:100, LETTERS[1:5]))
b <- c(1, 0.7, 1.3, 2.9, -2)
dat <- X * b[col(X)] + matrix(rnorm(100 * 5, 0, 0.1), 100, 5)
dat <- as.data.frame(dat)
pairs(dat)
Run Code Online (Sandbox Code Playgroud)

所以基本上我们想要计算5*4 = 20个回归线:

-----  A ~ B  A ~ C  A ~ D  A ~ E
B ~ A  -----  B ~ C  B ~ D  B ~ E
C ~ A  C ~ B  -----  C ~ D  C ~ E
D ~ …
Run Code Online (Sandbox Code Playgroud)

performance regression r linear-regression lm

11
推荐指数
1
解决办法
2680
查看次数

R循环的变量名运行线性回归模型

首先,我对此很陌生,因此我的方法/想法可能是错误的,我已经使用R和R studio将xlsx数据集导入到数据框中。我希望能够遍历列名以获取所有变量,其中所有变量的精确值为“ 10 ”,以便运行简单的线性回归。所以这是我的代码:

indx <- grepl('_10_', colnames(data)) #list returns all of the true values in the data set
col10 <- names(data[indx]) #this gives me the names of the columns I want
Run Code Online (Sandbox Code Playgroud)

这是我有的for循环,返回错误:

temp <- c()
for(i in 1:length(col10)){
   temp = col10[[i]]
  lm.test <- lm(Total_Transactions ~ temp[[i]], data = data)
  print(temp) #actually prints out the right column names
  i + 1
}
Run Code Online (Sandbox Code Playgroud)

甚至可以运行一个循环来将这些变量放入线性回归模型中?我得到的错误是:“ model.frame.default中的错误(公式= Total_Transactions〜temp [[i]] ,:可变长度不同(为'temp [[i]]'找到))”。如果有人可以指点我朝着正确的方向前进,我将非常感谢。

modeling loops r linear-regression

2
推荐指数
1
解决办法
3238
查看次数

循环回归模型术语的组合

我在表单中运行回归

reg=lm(y ~ x1+x2+x3+z1,data=mydata)
Run Code Online (Sandbox Code Playgroud)

在最后一个术语的位置z1,我想循环遍历一组不同的变量,z1通过z10为每个变量运行一个回归作为最后一个术语.例如,在第二次运行中我想使用

reg=lm(y ~ x1+x2+x3+z2,data=mydata)
Run Code Online (Sandbox Code Playgroud)

在第三轮:

reg=lm(y ~ x1+x2+x3+z3,data=mydata)
Run Code Online (Sandbox Code Playgroud)

如何通过循环遍历z变量列表来自动执行此操作?

r apply lm

1
推荐指数
1
解决办法
3000
查看次数

标签 统计

r ×3

linear-regression ×2

lm ×2

apply ×1

loops ×1

modeling ×1

performance ×1

regression ×1