Je suis assez nouveau dans R, en essayant de trouver mon pourquoi. J'ai créé une nouvelle trame de données basée sur le cadre de données "original".créer un sous-ensemble de trame de données lors de l'exécution d'une boucle
library(dplyr)
prdgrp <- as.vector(mth['MMITCL'])
prdgrp %>% distinct(MMITCL)
Lorsque vous faites cela, le résultat est une liste de valeurs uniques de la colonne MMITCL. Je voudrais utiliser ces données dans une séquence de boucle qui crée d'abord un nouveau sous-ensemble des données originales et les imprime un graphique basé sur ce point:
#START LOOP
for (i in 1:length(prdgrp))
{
# mth[c(MMITCL==prdgrp[i],]
mth_1 <- mth[c(mth$MMITCL==prdgrp[i]),]
# Development of TPC by month
library(ggplot2)
library(scales)
ggplot(mth_1, aes(Date, TPC_MTD))+ geom_line()
}
# END LOOP
Faire cela me donne le message d'erreur suivant:
Error in mth$MMITCL == prdgrp[i] :
comparison of these types is not implemented
In addition: Warning:
I `[.data.frame`(mth, c(mth$MMITCL == prdgrp[i]),) :
Incompatible methods ("Ops.factor", "Ops.data.frame") for "=="
Qu'est-ce que je fais mal.
oui vous avez raison. Je n'ai pas ajouté le code complet de ce que je souhaite faire, car je fais aussi des prévisions de Holt-Winter sur les données plus tard que je souhaite stocker. Mes appoligies pour ne pas inclure cela. –
Est-ce que l'ajout ci-dessus répond à votre question? Une partie de votre problème est lorsque vous sous-ensemble les données que vous utilisez c() dans le []. Il peut y avoir d'autres problèmes, mais vous devrez publier un exemple de travail minimal. –
il a résolu ma question. Merci beaucoup pour votre aide. Apprécié. –