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

2015年度 言語情報処理論/言語処理論B (Day 2)

 以下は、東京外国語大学の集中講義「言語情報処理論/言語処理論B」に関するメモです。

Class 6~7: グラフィックス

 この時間では、主に以下の内容を扱います(テキストの6章)。

  • 高水準作画関数
  • 低水準作画関数
    • 直線
    • 矢印
    • 矩形
    • 格子
    • 題名
    • 文字
    • 凡例
  • グラフの保存

様々なグラフのデモ

demo(graphics)

irisデータの視覚化

# irisデータの表示
iris
# irisデータの次元数
dim(iris)

f:id:langstat:20160202181948p:plain

# as.numeric関数のヘルプ
help(as.numeric)
# 文字列データを無理やり数値に変換する例
iris[, 5] # 文字列データ
as.numeric(iris[, 5]) #数値データ

f:id:langstat:20160202181957p:plain

Class 8: 基本的な統計解析

 この時間では、主に以下の内容を扱います(テキストの7章)。

  • 「1つのデータ」の特徴をつかむ
  • 対応のある「2つのデータ」の特徴をつかむ
  • 関連のある「2つのデータ」の特徴をつかむ
  • 対応のない「2つのデータ」の特徴をつかむ
  • 対応のない「3つのデータ」の特徴をつかむ
  • 複数の比率」に関するデータの特徴をつかむ
  • 2×2のデータの特徴をつかむ

Class 9: 発展的な統計解析

 この時間では、多変量解析と呼ばれる発展的な統計手法のうち、主に、主成分分析とクラスター分析を扱います。これらの分析をRで実行する手順は複数存在しますが、ここでは、できるだけシンプルなものを紹介します。
 まず、主成分分析とは、ごくごく簡単に言うと、複数の変数を手がかりに、大量のデータを似たもの同士でグルーピングする手法です。

# パッケージの読み込み
library(MASS)
# caithデータ
help(caith)
caith
# 主成分分析
pca.result <- prcomp(caith)
pca.result
biplot(pca.result)

 クラスター分析も、主成分分析と同様に、複数の変数を手がかりに、大量のデータを似たもの同士でグルーピングする手法です。ただし、主成分分析が「データと変数の関係」を把握するために用いられるのに対して、クラスター分析は(主に)「データ間の関係」のみに焦点を当てます。*1

# クラスター分析
d <- dist(caith, "euclidean")
d
hc <- hclust(d, "complete")
hc
plot(hc, hang = -1)
# 行列を転置して、クラスター分析
caith2 <- t(caith)
d2 <- dist(caith2, "euclidean")
hc2 <- hclust(d2, "complete")
plot(hc2, hang = -1)
# クラスター分析における距離と結合法
help(dist)
help(hclust)

 そして、同志社大学金明哲先生がこちらで公開されている泉鏡花、岡本綺堂、島崎藤村の読点の打ち方のデータなどを使うと、文字データに基づく文章の書き手の分類実験などを行うことも可能です。

# データの読み込み
mat <- read.csv("http://mjin.doshisha.ac.jp/data/IOScomma.csv", row.names = 1, header = TRUE)
# 読み込んだデータの確認
mat

*1:主成分分析とクラスター分析では、「似たもの同士でグルーピングする」ための方法が異なるために、解析結果に若干の違いが出る場合もあります。

*2:受講生には、授業内で紙媒体もしくはPDFで配布する予定です。