Détection de la langue des avis produits
Vous allez vous exercer à la détection de langue sur un petit jeu de données appelé non_english_reviews. Il s’agit d’un échantillon d’avis non anglophones issus des avis produits Amazon.
Vous parcourrez les lignes du jeu de données, détecterez la langue de chaque ligne et l’ajouterez à une liste vide. Il faut ensuite nettoyer la liste pour qu’elle ne contienne que le code de langue de l’avis, comme 'en' pour l’anglais, au lieu de la sortie classique en:0.9987654. Rappelez-vous que la fonction de détection peut trouver plusieurs langues et que le premier élément de la liste retournée est le candidat le plus probable. Enfin, vous affecterez cette liste à une nouvelle colonne.
La logique est la même que dans le diaporama et l’exercice précédent, mais au lieu d’appliquer la fonction à une liste, vous travaillez ici avec un jeu de données.
Cet exercice fait partie du cours
Analyse de sentiments en Python
Instructions
- Itérez sur les lignes du jeu de données
non_english_reviews. - À l’intérieur de la boucle, détectez la langue de la deuxième colonne du jeu de données.
- Nettoyez la chaîne en scindant sur
:dans l’expression de compréhension de liste. - Enfin, affectez la liste nettoyée à une nouvelle colonne.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
from langdetect import detect_langs
languages = []
# Loop over the rows of the dataset and append
for row in ____(____(non_english_reviews)):
languages.append(____(non_english_reviews.iloc[row, 1]))
# Clean the list by splitting
languages = [str(lang).____(':')[0][1:] for lang in languages]
# Assign the list to a new feature
non_english_reviews['language'] = ____
print(non_english_reviews.head())