読者です 読者をやめる 読者になる 読者になる

語彙の豊富さや文章の難しさを測る (3)

 前々回の記事前回の記事ではkoRpusパッケージを使いましたが、languageRパッケージにも語彙の豊富さを測る関数があります。今回の分析データは、Lewis CarrollAlice's Adventures in WonderlandL. Frank BaumThe Wonderful Wizard of Ozとします。

# パッケージの読み込み
library(languageR)
library(zipfR)
# 分析データの読み込み
data(alice, oz)

 では、compare.richness.fnc関数を使って、読み込んだ2つのデータにおける語彙の豊富さを比較してみましょう。なお、以下の例では、データ中の文字を全て小文字に変換してから比較を行っています。

# 語彙の豊富さの比較
compare.richness.fnc(tolower(alice), tolower(oz))

 上記のスクリプトを実行すると、以下のような結果が表示されます。

comparison of lexical richness for tolower(alice) and tolower(oz) 
with approximations of variances based on the LNRE models
gigp (X2 = 61.72) and gigp (X2 = 48.12)

               Tokens Types HapaxLegomena GrowthRate
tolower(alice)  27269  2615          1166    0.04276
tolower(oz)     39513  2882          1186    0.03002

two-tailed tests:

                             Z p
Vocabulary Size        -6.4499 0
Vocabulary Growth Rate  9.7686 0

 これを見ると、2つのデータの総語数 (Tokens)、異語数 (Types)、頻度1の単語の数 (HapaxLegomena)、語彙成長率 (GrowthRate)*1 に加え、語彙量と語彙成長率のZ値とp値が分かります。

*1:なお、語彙成長率とは、頻度1の単語の数を総語数で割った値のことです。aliceの場合、1166を27269で割ると、結果は約0.04276となります。