始める無料で始める

テキストデータに慣れよう

この演習では、TV番組 The Big Bang Theory に登場する Sheldon Cooper の名言を分析して、テキストデータで遊んでみます。実際のテキストデータを扱うときの感覚をつかむために、文を分析して洞察を得ていきます。

単語からインデックス、インデックスから単語への対応を作るため、辞書内包表記を使って辞書を作成します。pandas.DataFrame などではなく辞書を使うのは、より直感的で、不要な複雑さを増やさないためです。

データは sheldon_quotes に用意されており、最初の2文はすでに表示されています。

この演習はコースの一部です

Kerasで学ぶ言語モデリングのためのRecurrent Neural Networks (RNNs)

コースを見る

演習の手順

  • 文を join して1つの変数にまとめ、そこからすべての単語を抽出して all_words に格納します。
  • 単語のリストに list(set()) を適用して重複を取り除き、unique_words に格納します。
  • 辞書内包表記を使って、インデックスをキー、単語を値とする辞書を作成します。
  • 辞書内包表記を使って、単語をキー、インデックスを値とする辞書を作成します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Transform the list of sentences into a list of words
all_words = ' '.____(sheldon_quotes).split(' ')

# Get number of unique words
unique_words = list(set(all_words))

# Dictionary of indexes as keys and words as values
index_to_word = {____ for i, wd in enumerate(sorted(unique_words))}

print(index_to_word)

# Dictionary of words as keys and indexes as values
word_to_index = {wd:i for ____ in enumerate(sorted(unique_words))}

print(word_to_index)
コードを編集して実行