Angenommen, es gibt einige data.frame foo_data_frame und man möchte die Regression der Zielspalte Y durch einige andere Spalten finden. Zu diesem Zweck werden üblicherweise einige Formeln und Modelle verwendet. Zum Beispiel:
linear_model <- lm(Y ~ FACTOR_NAME_1 + FACTOR_NAME_2, foo_data_frame)
Das funktioniert gut, wenn die Formel statisch codiert ist. Wenn mehrere Modelle mit der konstanten Anzahl abhängiger Variablen (z. B. 2) verwurzelt werden sollen, kann dies folgendermaßen behandelt werden:
for (i in seq_len(factor_number)) {
for (j in seq(i + 1, factor_number)) {
linear_model <- lm(Y ~ F1 + F2, list(Y=foo_data_frame$Y,
F1=foo_data_frame[[i]],
F2=foo_data_frame[[j]]))
# linear_model further analyzing...
}
}
Meine Frage ist, wie man den gleichen Effekt macht, wenn sich die Anzahl der Variablen während der Programmausführung dynamisch ändert.
for (number_of_factors in seq_len(5)) {
# Then root over subsets with #number_of_factors cardinality.
for (factors_subset in all_subsets_with_fixed_cardinality) {
# Here I want to fit model with factors from factors_subset.
linear_model <- lm(Does R provide smth to write here?)
}
}