CommencerCommencer gratuitement

Common people

La fonction distinct() vous a montré les valeurs uniques. Il peut aussi être utile de savoir combien vous avez de chaque valeur. La fonction base R pour cela est table() ; elle n’est pas prise en charge dans sparklyr car elle ne s’inscrit pas dans la philosophie du tidyverse consistant à tout conserver dans des tibbles. À la place, vous devez utiliser count(). Pour l’utiliser, passez les noms de colonnes non quotés. Par exemple, pour obtenir les effectifs des combinaisons distinctes des colonnes x, y et z, vous saisiriez ce qui suit.

a_tibble %>%
  count(x, y, z)

Le résultat est le même que

a_tibble %>%
  distinct(x, y, z)

… à ceci près que vous obtenez une colonne supplémentaire, n, qui contient les effectifs.

Une utilisation très pratique de count() est d’obtenir les valeurs les plus fréquentes. Pour cela, vous appelez count() avec l’argument sort = TRUE, qui trie les lignes par ordre décroissant de la colonne n, puis vous utilisez slice_max() pour limiter les résultats aux premières valeurs, selon le nombre souhaité. (slice_max() est similaire à head() de base R, mais fonctionne avec des jeux de données distants, comme ceux de Spark.) Par exemple, pour obtenir les 20 combinaisons les plus fréquentes des colonnes x, y et z, utilisez ce qui suit.

a_tibble %>%
  count(x, y, z, sort = TRUE) %>%
  slice_max(20)

Cet exercice fait partie du cours

Introduction à Spark avec sparklyr en R

Afficher le cours

Instructions

Une connexion Spark a été créée pour vous sous le nom spark_conn. Un tibble lié aux métadonnées des morceaux stockées dans Spark a été pré‑défini sous le nom track_metadata_tbl.

  • Comptez les valeurs de la colonne artist_name de track_metadata_tbl.
    • Passez sort = TRUE pour trier les lignes par popularité décroissante.
  • Limitez les résultats aux 20 premiers à l’aide de slice_max().

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# track_metadata_tbl has been pre-defined
track_metadata_tbl

track_metadata_tbl %>%
  # Count the artist_name values
  ___ %>%
  # Restrict to top 20
  ___
Modifier et exécuter le code