CommencezCommencez gratuitement

Racination des mots et recomplétion sur une phrase

Considérons la phrase suivante comme notre document pour cet exercice :

"In a complicated haste, Tom rushed to fix a new complication, too complicatedly."

Cette phrase contient les trois mêmes formes du mot « complicate » que nous avons vues dans l'exercice précédent. La différence ici, c'est que même si vous appelez stemDocument() sur cette phrase, elle sera renvoyée sans raciner aucun mot. Prenez un moment pour l'essayer dans la console. Assurez-vous d'inclure les signes de ponctuation.

Cela se produit parce que stemDocument() traite la phrase entière comme un seul mot. Autrement dit, notre document est un vecteur de caractères de longueur 1 au lieu d'une longueur n, où n est le nombre de mots dans le document. Pour régler ce problème, nous retirons d'abord la ponctuation avec la fonction removePunctuation(), que vous avez apprise il y a quelques exercices. Nous appliquons ensuite strsplit() à ce vecteur de longueur 1 pour obtenir une longueur n, puis unlist(), et nous procédons ensuite à la racination et à la recomplétion.

Ne vous en faites pas si cela vous a semblé confus. Parcourons le processus étape par étape!

Cette activité fait partie du cours

Extraction de texte avec sac de mots en R

Voir le cours

Instructions de l’exercice

Le document text_data et le dictionnaire de recomplétion comp_dict sont chargés dans votre espace de travail.

  • Retirez la ponctuation dans text_data avec removePunctuation(), et assignez le résultat à rm_punc.
  • Appelez strsplit() sur rm_punc avec l'argument split égal à " ". Imbriquez cet appel dans unlist(), et assignez à n_char_vec.
  • Utilisez de nouveau stemDocument() pour effectuer la racination des mots sur n_char_vec, et assignez à stem_doc.
  • Créez complete_doc en recomplétant votre document raciné avec stemCompletion() et en utilisant comp_dict comme corpus de référence.

Est-ce que stem_doc et complete_doc correspondent à vos attentes?

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Remove punctuation: rm_punc
rm_punc <- ____

# Create character vector: n_char_vec
n_char_vec <- unlist(___(___, split = " "))

# Perform word stemming: stem_doc
stem_doc <- ___

# Print stem_doc
stem_doc

# Re-complete stemmed document: complete_doc
complete_doc <- ___

# Print complete_doc
complete_doc
Modifier et exécuter le code