始める無料で始める

ベクターを VCorpus オブジェクトにする (2)

ベクターを Source オブジェクトに変換できたので、次はそれを tm の別の関数 VCorpus() に渡して、揮発性コーパス(volatile corpus)を作成します。けっこうシンプルですよね。

VCorpus オブジェクトは入れ子のリスト(リストのリスト)です。VCorpus の各インデックスには PlainTextDocument オブジェクトがあり、これは実際のテキストデータ(content)と、それに対応するメタデータ(meta)を含むリストです。全体像をつかむには、VCorpus オブジェクトを可視化してみると役立ちます。

単一のドキュメントオブジェクト(10番目)を確認するには、二重の角括弧で抽出します。

coffee_corpus[[10]]

実際のテキストを確認するには、リストを2回インデックス指定します。タイムスタンプなどのドキュメントのメタデータにアクセスするには、[1][2] に変更します。もう一つのプレーンテキストの確認方法は、content() 関数を使うことです。こちらは2回目の角括弧が不要です。

coffee_corpus[[10]][1]

content(coffee_corpus[[10]])

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

Rで学ぶBag-of-Wordsによるテキストマイニング

コースを見る

演習の手順

  • coffee_source オブジェクトに対して VCorpus() 関数を呼び出し、coffee_corpus を作成します。
  • コンソールに出力して、coffee_corpusVCorpus オブジェクトであることを確認します。
  • coffee_corpus の15番目の要素をコンソールに出力し、15番目のツイートの本文とメタデータを含む PlainTextDocument であることを確かめます。二重角括弧で抽出してください。
  • coffee_corpus 内の15番目のツイートの本文を出力します。該当ツイートを二重角括弧で選び、続けて単一角括弧でその本文を取り出してください。
  • coffee_corpus 内の10番目のツイートの content() を出力します。

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

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

## coffee_source is already in your workspace

# Make a volatile corpus from coffee_source
coffee_corpus <- ___

# Print out coffee_corpus
___

# Print the 15th tweet in coffee_corpus
___

# Print the contents of the 15th tweet in coffee_corpus
___

# Now use content to review the plain text of the 10th tweet
___(___[[___]])
コードを編集して実行