Récapitulatif - Pipeline de données
Fait partie de la section Logique et flux d’exécution du Journey R de Coddy. Leçon 36 sur 64.
Défi
DifficileComplétez sales_report(records). Chaque enregistrement est de la forme item:quantity:price. Construisez le rapport en trois étapes :
- Analysez les enregistrements dans une liste avec
lapply(). - Conservez les enregistrements dont la quantité est supérieure à 0 avec
Filter(). - Calculez le total de chaque ligne conservée (quantité multipliée par le prix) avec
sapply(), et le total général avecReduce().
Renvoyez une ligne par enregistrement conservé, tea: 8.00, puis Total: avec le total général et Skipped: avec le nombre d’enregistrements dont la quantité était égale à 0. Affichez les montants avec deux décimales.
Le code fourni lit les enregistrements sous forme d’une ligne séparée par des virgules et affiche chaque ligne renvoyée.
Essayez vous-même
sales_report <- function(records) {
# Écrivez votre code ici
character(0)
}
# Code d'entrée/sortie fourni : gardez-le tel quel
input <- suppressWarnings(readLines(file("stdin")))
cat(sales_report(strsplit(input[1], ",")[[1]]), sep = "\n")
Toutes les leçons de Logique et flux d’exécution
1Les chaînes en profondeur
Sous-chaînes avec substr()Mise en forme avec sprintf()Scinder et joindreRechercher dans les chaînesRemplacer du texteRécapitulatif - Créateur de nom d'utilisateur4Matrices
Créer des matricesIndexer des matricesRécapitulatifs des lignes et des colonnesArithmétique matricielleRécapitulatif - Plan de salle7La famille Apply
lapply et sapplyMap et mapplyFilter et FindReduceRécapitulatif - Pipeline de données10Structures de contrôle avancées
La fonction switch()ifelse() vectorisérepeat et breakFonctions récursivesRécapitulatif – Classificateur de notes2Recherches par clé-valeur
Recherches dans des vecteurs nommésVérifier les clésAjouter et supprimer des clésParcourir les nomsRécapitulatif - Bureau des stocks5Projet - Carnet de notes
Ajouter des élèvesEnregistrer les notes3Ensembles et comptage
Valeurs uniquesOpérations sur les ensemblesTests d’appartenanceCompter avec table()Récapitulatif - Invités à l’événement6Les fonctions comme valeurs
Fonctions anonymesPasser des fonctionsRetourner des fonctionsFermetures avec étatRécapitulatif - Règles de remise9Data Frames
Créer des Data FramesColonnes et lignesFiltrer les lignesAjouter et trierRécapitulatif - Rapport des ventes12Projet - Suivi des dépenses
Enregistrer les dépensesDépenses totalesEntraînez-vous par vous-même : Compilateur R en ligne