2017-07-24 3 views
-3

J'ai 10 k signifie Grappes d'un ensemble de données. Je veux construire un modèle de régression linéaire avec tous ces groupes séparément. ie. Je veux 10 modèles de régression linéaire. Comment puis-je faire cela en utilisant des boucles dans RRégression linéaire sur les grappes

+0

Avec une boucle. (Sérieux: qu'avez-vous essayé?) – Zach

+0

'lapply (split (train, grappe), lm, formule = prix ~.)' Veuillez consulter [mcve]. –

+0

Merci @ G.Grothendieck –

Répondre

0

J'ai eu la réponse. C'est ce que je voulais vraiment. Ce code est essentiellement de Hadley poste github de Wikham « Gestion de plusieurs modèles »

house.cluster <- kmeans(scale(house), 10, 50) 
house$cluster <- house.cluster$cluster 

by_cluster <- train %>% 
    group_by(cluster) %>% 
    nest() 


cluster_model <- function(df) { 
    lm(price ~., data = df) 
} 

models <- by_cluster %>% 
    mutate(
    model = data %>% map(cluster_model) 
) 


models <- models %>% 
    mutate(
    glance = model %>% map(broom::glance), 
    rsq  = glance %>% map_dbl("r.squared") 
) 

Maintenant, je veux prédire mon test avec ces 10 régler modèles. Comment cela peut-il être fait?