Ich möchte Ergebnisse der linearen Regression in Liste wie Abschnitt und Koeffizienten speichern. Ich habe folgenden CodeWie führe ich eine Liste zu einer Funktion in R
results = list()
intercept = list()
coeff = list()
GetLM = function(dataframe,results,intercept,coeff){
unq_clients = as.vector(unique(dataframe$clients))
for(i in 1:length(unq_clients)){
new_df=dataframe[dataframe$clients == unq_clients[i],]
regression= lm(a ~ b,data = new_df)
results[[i]] = coef(regression)
intercept[i] = results[[i]][1]
coeff[i]=results[[i]][2]
}
}
Aber nichts wird in der Liste gespeichert, wenn ich die Funktion aufrufen. Was mache ich falsch?
warum ist ein 'return()' Anweisung in Ihrer Funktion fehlt. Andernfalls werden keine Ergänzungen zu Ergebnissen außerhalb des Funktionsumfangs vorgenommen. füge am Ende der Funktion –
etwas wie 'return (list (results, intercept, coeff))' hinzu und vermeide auch die 'for' -Schleife. versuchen Sie etwas wie 'lapply()' –