MVE: 讓這成爲數據集:自動化迴歸與特定的因變量和自變量
data <- data.frame(year = rep(seq(1966,2015,1), 8),
county = c(rep('prva', 50), rep('druga', 50), rep('treća', 50), rep('četvrta', 50),
rep('peta', 50), rep('šesta', 50), rep('sedma', 50), rep('osma', 50)),
crime1 = runif(400), crime2 = runif(400), crime3 = runif(400),
uvar1 = runif(400), uvar2 = runif(400), uvar3 = runif(400),
var1 = runif(400), var2 = runif(400), var3 = runif(400), var4 = runif(400), var5 = runif(400))
假設crime1,2和3是具體的因變量。 uvar1,2和3是特定的自變量。 var1,2等是其他協變量。我想要做的是自動化迴歸。
也就是說,我要得到這個代碼的結果:
plm(log(crime1) = log(univar1) + log(var1) + log(var2) + log(var3) + log(var4), model = 'within', effect = 'twoways', data = data)
plm(log(crime2) = log(univar2) + log(var1) + log(var2) + log(var3) + log(var4), model = 'within', effect = 'twoways', data = data)
等;但沒有爲每個估計模型編寫20行代碼。
通過尋找類似的問題,這是因爲據我會來:
crime <- c('crime1', 'crime2', 'crime3')
plm.results <- lapply(data[, crime], function(y) plm(y ~ var1 + var2 + var3 + var4,
model = 'within', effect ='twoways', data = data))
這肯定有助於我的因變量,但我想不出如何將在這些估計的特定的獨立變量。爲了澄清一次,我希望univar1在第一次迴歸中,但不在其餘部分中。
正是我在找的東西。非常感謝! – Astronaut
儘管它的功能完美,但我很想知道你在這裏做了什麼,而且我在這個部分做了很多努力:indepVars2 = Reduce(函數(x,y)paste(x,y,sep =「+」), lapply (colnames(data)[grepl(「^ v」,colnames(data))],fn_appendLog))請您詳細說明這部分究竟做了什麼? – Astronaut
我已經添加了一些涉及'Reduce'和'lapply'的步驟的解釋,讓我知道這是否足夠。 – OdeToMyFiddle