Создайте свои имена файлов.
files <- paste("outdata", 1:3, ".csv", sep = "")
#alternatively, use list.files/dir as suggested by Chris
То, как вы структурируете остальную часть своего кода, зависит от того, заботитесь ли вы об этих промежуточных переменных или нет.Я предполагал, что вы делаете, поэтому у вас есть много отдельных циклов.Если вам все равно, объедините операторы lapply.
Считайте данные.
all_data <- lapply(file, read.csv)
Объедините.
merged <- lapply(all_data, function(data)
{
merge(QOG, data, by = c('year', 'country'), all = FALSE)
})
Модель.
models <- lapply(merged, function(data)
{
plm(
NY.GDP.PCAP.KD.ZG ~ log(Enrolment.in.all.programmes..Tertiary..Total) + law + engineering + log(SP.POP.TOTL) + lp.legor,
data,
model = "random"
)
})
Показать вывод.
(summaries <- lapply(models, summary))
(eststos <- lapply(models, eststo))