Je suis nouveau à R et j'ai des problèmes de calcul du montant de la facture pour chaque mois. J'ai le fichier de données comme ci-dessous:
dat <- data.frame( time = factor(c("Breakfast","Breakfast","Breakfast","Breakfast","Breakfast","Breakfast"), levels=c("Breakfast")), date=c("2020-01-20","2020-01-21","2020-01-22","2020-02-10","2020-02-11","2020-02-12"), total_bill = c(12.7557,14.8,17.23,15.7,16.9,13.2) )
3 Réponses :
Nous pouvons convertir la «date» à Nous pouvons le convertir en format "large", si cela est nécessaire p> si nous devons également regrouper "l'année" ' p> date de la classe code>, obtenez le
mois code> et utilisez-le comme colonne de regroupement et
somme code> le 'total_bill '
Comment puis-je invoquer chaque somme de ces deux mois?
@ Ben10, il fait la somme séparément chaque mois. J'ai mis à jour avec la sortie que j'ai obtenue
Merci encore. Je veux te demander qcore? Comment pouvons-nous déménager pour discuter?
@ Ben10, vous pouvez utiliser la même salle de discussion la dernière fois. Pouvez-vous s'il vous plaît envoyé une invitation
Comment inviter? Je suis nouveau à cela.
Je ne sais pas comment inviter
@ Ben10 je suppose que vous pouvez utiliser la même pièce de cet autre post
Vous voudrez peut-être ajouter une année dans la clause de groupe_by afin que la solution fonctionne lorsque les données incluent les autres années. Donc, au lieu de, group_by (heure, mois = format (AS.Date (date), "% b"))%>% Utilisation group_by (heure, mois = format (AS.Date (date), "% Y-% B "))%>%>%
J'ai trouvé cette chambre maintenant mais comment vous inviter?
@ Ben10 Pouvez-vous montrer le lien vers cette pièce SSO que je peux entrer
chat.stackoverflow. com / chambres / 213534 / ...
library(dplyr) d_sum <- dat %>% group_by(substr(date, 0, 7)) %>% summarise(sum = sum(total_bill)) d_sum # A tibble: 2 x 2 `substr(date, 0, 7)` sum <chr> <dbl> 1 2020-01 44.8 2 2020-02 45.8
Comment puis-je accéder à chaque somme de chaque mois?
Je ne sais pas que je comprends, vous pouvez mettre la sortie dans une nouvelle data.frame, par exemple D_SUM (voir Mise à jour)
@ Ben10 d_sum ["2020-01"] vous donnera pour le 20 janvier et d_sum ["2020-02"] vous donnera pour le 20 février.
Est-ce que cela répond à votre question? Vous pouvez également convertir des sums code> dans un fichier de données et accéder aux sommes mensuelles via les noms de mois: P> SUMS CODE> est une liste: Donc, si vous souhaitez accéder, par exemple, la donnée de février pour février, vous pouvez faire Ceci: p>
tapply(dat$total_bill, sub("\\d{4}-(\\d{2})-\\d{2}", "\\1", dat$date), sum)
01 02
44.7857 45.8000
Mais comment puis-je accéder par exemple dat $ janvier code> ou
dat $ février code>?
Mise à jour de la réponse.