Wolfram Language

Traitement de texte et de langues

Fréquence des de noms communs dans les discours

Utilisez TextCases pour extraire des sous-chaînes d'une forme donnée, par exemple des verbes, ainsi que les pays, les adresses e-mail, et bien d'autres choses.

Récupérez un ensemble de données de tous les discours prononcés par les présidents des États-Unis au cours des sessions conjointes du Congrès des États-Unis.

In[1]:=
Click for copyable input
data = ResourceData["State of the Union Addresses"];

Réduisez la taille de l'ensemble de données en ne conservant que les noms de président, les années de discours et les textes de discours.

In[2]:=
Click for copyable input
reduceddata = data[All, {"President", "Year", "Text"}];

Prenez un échantillon de discours à des intervalles de 10 ans.

In[3]:=
Click for copyable input
years = Range[1965, 2015, 10]; speeches = Select[reduceddata, MemberQ[years, #Year] &]
Out[3]=

Utilisez TextCases pour identifier les noms dans chaque discours.

In[4]:=
Click for copyable input
nouns = TextCases[Normal@speeches[All, "Text"], "Noun"];

Comptez les occurrences de tous les noms distincts dans chaque discours.

In[5]:=
Click for copyable input
freqnouns = Counts /@ nouns;

Ignorez certains mots qui sont très communs à la plupart des années.

In[6]:=
Click for copyable input
freqnouns = KeyDrop[freqnouns, {"country", "people", "year", "years", "world"}];

Générez des nuages de mots indiquant la fréquence des noms à travers le temps.

Montrer l'entrée complète de Wolfram Language
In[7]:=
Click for copyable input
labels = Normal@ speeches[All, CommonName[#President] <> " " <> ToString[#Year] &]; WordCloud[freqnouns[[#]], PlotLabel -> labels[[#]]] & /@ Range[6]
Out[7]=

Exemples connexes

de en es ja ko pt-br ru zh