【发布时间】:2020-01-04 22:16:44
【问题描述】:
给定的数据集具有一系列预测变量,应在简单(尽管是多变量)回归模型中一一使用。我无法掌握是否需要循环通过(名称)预测变量或类似lapply() 的东西就足够了。
创建一个函数在创建输出之前需要一个参数,但我不知道如何在给定的模型公式中加入 for 循环。
Some data
---
df <- data.frame(y1=runif(100,1,10),
y2=runif(100,1,10),
x1= runif(100,1,5),
x2= runif(100,1,5),
x3= runif(100,1,5))
Y = cbind( df$y1 , df$y2 )
我有一种感觉是这样的:
list_pred <- for ( x in 1:colnames(pred)) {
print(paste(x))
}
但是for 循环并不想继续工作。所以这让我觉得我可能必须创建一个包含lm() 参数的函数。
not_stepwise <- matrix( 0 , predictor , 1 ) # pre-allocation?
for (x in 1:predictor) {
lm.dd <- lm( Y ~ [x] , data = df ] )
}
但此时我不知道该去哪里寻找,Google 和 StackOverflow 对此都有一些广泛的信息(除了统计含义,但我已经涵盖了)。
更新:为了澄清,我正在寻找模型本身(和/或 sig. 预测变量)的 R² 值的概述,以确定该模型是否甚至具有重要的预测变量,例如一个有意义的模型。
更新 2:我的数据集的外观(没有 DV)
'data.frame': 100 obs. of 35 variables:
$ Minuten : int 72 30 102 212 37 57 120 146 143 189 ...
$ Teamsize : int 3 3 4 3 2 4 5 6 5 3 ...
$ Exp : num 6.67 6.67 5.5 5.33 10.5 ...
$ Chirurg1 : int 10 10 1 2 4 2 3 3 2 9 ...
$ Chirurg2 : int 11 11 2 NA NA NA NA NA 9 2 ...
$ NG : int 0 0 0 0 0 0 0 0 0 0 ...
$ NG.Ratio : num 0 0 0 0 0 0 0 0 0 0 ...
$ Specialisme : int 2 2 1 3 1 3 1 1 3 3 ...
$ Observaties : int 43 21 55 132 22 90 90 64 100 129 ...
$ UniqueCom : int 9 6 9 12 4 9 9 12 16 12 ...
$ G.Ratio : num 0.333 0.667 0.25 0.667 0.5 ...
$ Bewustwording : int 1 0 1 1 0 0 0 0 1 1 ...
$ Confrontatie : int 0 1 0 2 0 0 0 1 1 2 ...
$ Confrontatie.Outside: int 0 0 0 0 0 0 0 0 0 0 ...
$ Coordinerend : int 1 3 6 17 2 4 10 6 14 9 ...
$ Delegerend : int 6 3 2 22 0 9 6 1 15 11 ...
$ Goedaardig : int 3 0 5 4 0 7 3 2 9 1 ...
$ Grappig : int 0 1 0 0 0 2 0 1 1 1 ...
$ Hofmaken : int 0 0 0 0 0 1 1 2 1 0 ...
$ Instruerend : int 9 0 7 13 0 7 3 9 7 13 ...
$ Onderwijzend : int 6 5 3 21 9 2 14 5 8 22 ...
$ Ontbindend : int 1 1 0 0 1 0 1 1 2 1 ...
$ Protest : int 0 0 0 0 0 0 0 0 1 0 ...
$ Reactief : int 0 0 0 0 0 0 0 0 1 0 ...
$ Respons.Negatief : int 0 0 1 1 0 0 1 1 0 0 ...
$ Respons.Neutraal : int 0 0 0 0 0 0 0 0 0 2 ...
$ Respons.Positief : int 1 0 1 2 1 1 0 1 2 8 ...
$ Sign.out : int 1 0 1 1 0 1 0 1 1 0 ...
$ Time.out : int 0 0 0 1 0 0 0 0 0 0 ...
$ Volgzaam : int 0 0 0 0 0 0 0 0 1 0 ...
$ Vragend : int 0 0 0 3 0 0 1 0 1 1 ...
$ rank_sum : int 27 11 24 80 12 33 37 25 58 65 ...
$ rank_sum.60s : num 0.375 0.367 0.235 0.377 0.324 ...
$ ranking : int 43 56 46 11 55 37 35 45 21 17 ...
$ ranking.60s : int 30 34 72 29 49 1 58 92 21 41 ...
【问题讨论】:
标签: r regression data-modeling