トップページ | ひとつ上のページ | 目次ページ | このサイトについて | ENGLISH

広義の数量化V類

数量化V類は、 数量化理論 の一種です。 例として使われるデータの形が異なりますが、 コレスポンデンス分析 と数学的には同じであることが知られています。 コレスポンデンス分析 のページにありますが、 コレスポンデンス分析と 主成分分析 がとても似ているので、数量化V類も主成分分析と、とても似ている手法です。

オリジナルの数量化V類

元データが左のような行列データだったとします。 数量化V類は、「1」のある部分が対角線上にできるだけ並ぶように、行列を並べ替えます。 すると、「1」のある部分のXとYの順位データ同士の相関係数が最大化されます。
QM

QM

この状態を作った時の、順位データの値が、各カテゴリに何らかの意味のある順番として解釈します。

オリジナルの数量化V類では、行と列の並び替えを数学的な手続きで実行します。

数量化V類でわかること

まず、XとYのそれぞれのカテゴリについて、何らかの意味のある順番がわかるようになります。 この意味で、カテゴリが「数量化」されています。

次に、XとYのそれぞれのカテゴリについての相関の仕方もわかるようになります。

広義の数量化V類

このサイトでは「広義の数量化V類」というものを考えてみました。

対象とするデータは、 数量化理論 のページの分け方のData1、2、4になります。

また、 「目的変数なし。2種類のカテゴリの座標データを求める分析方法」 と考えています。 オリジナルの数量化V類だけではなく、 主成分分析コレスポンデンス分析 も含めたものとしています。
QM

広義の数量化V類は、 主成分分析 が中心に書いています。 広義の数量化V類となって来ると、質的変数と量的変数の混ざったデータも扱いますが、 コレスポンデンス分析 は、こうしたデータを扱う理論になっていません。

広義の数量化V類でできること

主成分分析は、 変数の仲間分けの分析サンプルの仲間分けの分析 に使えるものです。

一方で、広義の数量化V類は、 個々のカテゴリの仲間分けの分析サンプルの仲間分けの分析 に使えるものになっています。

広義の数量化V類に主成分分析を使う時に、入力データを作る部分以外は、主成分分析そのものです。 ところが、ダミー変換をしたデータを作ることによって、元々の質的変数について、 変数の仲間分けの分析 ではなく、 個々のカテゴリの仲間分けの分析 をするものになっています。

質的変数と量的変数の混ざったデータ

アソシエーション分析 のページでは、質的変数と量的変数の混ざったデータについて、量的変数を質的変数に変換して行った事例を書いています。 量的変数と質的変数が混ざったデータについては、この方法を使ったり 多重対応分析 を使ったりして、「データの構造を見る」というアプローチがベストと、筆者は考えています。

質的変数を ダミー変換 して主成分分析をすることはできるのですが、ダミー変換で作った変数と、量的変数は、相関係数が非常に低くなりがちです。 もともと量的変数だった変数同士の関係と、もともと量的変数だった変数とダミー変換で作った量的変数の関係と、 ダミー変換で作った量的変数同士の3種類の組み合わせについて、別の扱いをしなければいけないのですが、 いったんダミー変換をしてしまうと、別の扱いというのはできないので、変数の関係がうまく評価できなくなります。

そのため、質的変数と量的変数が混ざったデータについては、質的変数の分析手法に持ち込むのがベストと思います。

なお、量的変数がひとつなら、それを目的変数にして、 広義の数量化T類回帰木 を使って、データの構造を見る方法もあります。

2つの分析方法の使い分け

Data1と4をスタートにする場合は、面白い性質があります。

下の2つのグラフは、同じデータがスタートになっていて、分析方法が違います。 左はデータを分割表にしてから主成分分析をして、主成分得点と因子負荷量を合成したグラフです。 右はデータを ダミー変換 してから主成分分析をした時の、因子負荷量のグラフです。
左右対称の違いはありますが、ほぼ同じグラフが作られています。
PCA PCA

分割表を使う方法

分割表を作るための元データがなくても、元データを分析した時とほぼ同じ結果が出せることから、 元データがなくても、元データがある時と同じような分析ができることがわかります。

ダミー変換を使う方法

分割表を使う方法は、二元分割表を対象にするので、元の質的変数が3個(3列)以上ある時はできません。 ダミー変換を使う方法は、元の質的変数が何個あってもできます。

また、上のグラフでダミー変換を使う方法では、主成分得点の結果は入っていません。 主成分得点の情報から、 サンプルの仲間分けの分析 もできます。

Rの実施例

分割表を作ってから主成分分析

この例では、Cドライブの「Rtest」というフォルダに、 「Data.csv」という名前でデータが入っている事を想定しています。
PCA

setwd("C:/Rtest") # 作業用ディレクトリを変更
Data <- read.csv("Data.csv", header=T)
# データを読み込み
crs <- table(Data$X,Data$Y)
# 分割表を作る
pc <- prcomp(crs, scale=TRUE)
# 主成分分析
pc1 <- pc$x
# 主成分得点を得る
pc1 <- transform(pc1 ,name = rownames(pc1))
# 行名を追加
library(ggplot2)
# パッケージの読み込み
ggplot(pc1, aes(x=PC1, y=PC2,label=name)) + geom_text()
# 第1主成分と第2主成分で言葉の散布図
PCA

# ここまでは、X側のカテゴリの仲間分けでした。この後がY側のカテゴリの仲間分けです。
pc2 <- sweep(pc$rotation, MARGIN=2, pc$sdev, FUN="*") # 因子負荷量を計算
pc2 <- transform(pc2,name=rownames(pc2))
# 名前を書き替え
ggplot(pc2, aes(x=PC1, y=PC2,label=name)) + geom_text()
# 言葉の散布図
PCA

# 2つの結果を結合します。
pc3 <- rbind(pc1,pc2) # 2つの結果を結合
ggplot(pc3, aes(x=PC1, y=PC2,label=name)) + geom_text()
# 言葉の散布図
PCA PCA
分割表とグラフを見比べると、数字が大きいところの関係は、近くに配置されていることがわかります。

ダミー変換してから主成分分析

サンプルのデータは下記を使っています。「Name」の列はなくても動きます。
PCA

library(dummies) # ライブラリを読み込み
setwd("C:/Rtest") # 作業用ディレクトリを変更
Data <- read.csv("Data.csv", header=T) # データを読み込み
DataName <- Data$Name
# Nameの列を別名で保管する
Data$Name <- NULL
# データからNameの列を消して、Xの列だけにする
Data_dmy <- dummy.data.frame(Data)
# ダミー変換
pc <- prcomp(Data_dmy, scale=TRUE)
# 主成分分析
summary(pc)
# 「Cumulative Proportion」が累積寄与率。
pc1 <- pc$x
# 主成分得点を得る
pc1 <- transform(pc1 ,name = DataName)
# サンプル名を追加
pc1$Index <-row.names(Data)
# Indexという名前の列を作り、中身は行番号にする

library(ggplot2) # パッケージの読み込み
ggplot(pc1, aes(x=PC1, y=PC2,label=name)) + geom_text()
# 第1主成分と第2主成分で言葉の散布図
PCA

Z4とZ7が重なっています。 数量化V類は、主成分分析がベースなため、 サンプルの仲間分けの分析 をした時に、3次元以上にサンプルが割り振られていることがあり、散布図でうまく見れません。 2次元で見たい場合は、 多次元尺度構成法 の方が良いです。

pc2 <- sweep(pc$rotation, MARGIN=2, pc$sdev, FUN="*") # 因子負荷量を計算
pc2 <- transform(pc2,nameCol=rownames(pc2))
# 言葉の散布図
ggplot(pc2, aes(x=PC1, y=PC2,label=nameCol)) + geom_text()
# 言葉の散布図
PCA



参考文献

多変量する解析がわかる」 涌井良幸、涌井貞美 著 技術評論社 2011
0と1だけのデータをスタートにする時の数量化V類と、 分割表 のデータをスタートにする コレスポンデンス分析 は、行列の対角付近の数値が高くなるように行列を変換する点が同じそうです。


グラフィカルモデリング」 宮川雅巳 著 朝倉書店 1997
「数量化V類では、3変数以上の絡みがわからない」として、それがわかる方法として、 グラフィカル対数線形モデル(生起確率の対数をYにした、交互作用項を含む線形モデル)を紹介しています。
この本は、量的変数のグラフィカルモデリングと、質的変数のグラフィカルモデリングで大半のページを使っていますが、 量的変数と質的変数が混ざったデータのグラフィカルモデリングについても考察があります。 とても難しいテーマで、ひとつの方法は、量的変数は、質的変数に変換して質的変数の方法を使うこととしています。


順路 次は テキストマイニング

Tweet データサイエンス教室