主にリストに追加する必要があるのはcoplotsだと思いますが、それまでに進んでみましょう。2つの連続変数を視覚化するための開始点は、常に散布図である必要があります。3つ以上の変数を使用すると、自然に散布図行列に一般化されます(多くの変数がある場合は、それを複数の行列に分割する必要がある場合があります。参照:大きなN離散の散布図行列から情報を抽出する方法データ、&多くの変数?)。認識すべきことは、散布図行列は、高次元空間からの2D 周辺 投影のセットであることです。しかし、これらのマージンは、最も興味深く、有益ではないかもしれません。正確にあなたが見たいと思うかもしれないマージンはトリッキーな質問です(cf.、射影追跡)。しかし、調べる最も簡単な次のセットは、変数を直交させるセット、つまり主成分分析から生じる変数の散布図です。これをデータ削減に使用し、最初の2つの主成分の散布図を見ることで言及しました。その背後にある考え方は理にかなっていますが、最初の2つだけを見る必要はありません。他のものも検討する価値があるかもしれません(たとえば、分散の小さいPCが「有用」であるPCAの例を参照)。それらの散布図行列も。PCAの出力のもう1つの可能性は、バイプロットを作成することです。、元の変数が散布図の上の主成分(矢印として)に関連付けられる方法をオーバーレイします。また、主成分の散布図行列をバイプロットと組み合わせることができます。
上記のすべては、私が述べたように、限界です。コプロットは条件付きです(ここでの私の答えの上部は、条件付きと限界を対比しています)。文字通り、「coplot」は「条件付きプロット」の混合語です。コプロットでは、他の次元のデータのスライス(またはサブセット)を取得し、それらのサブセットのデータを一連の散布図にプロットします。それらを読む方法を学ぶと、それらは高次元データのパターンを探索するためのオプションのセットへの素晴らしい追加になります。
これらのアイデアを説明するために、RandUデータセット(1970年代に人気があったアルゴリズムによって生成された疑似ランダムデータ)の例を次に示します。
data(randu)
windows()
pairs(randu)
pca = princomp(randu)
attr(pca$scores, "dimnames")[[1]][1:400] = "o"
windows()
par(mfrow=c(3,3), mar=rep(.5,4), oma=rep(2,4))
for(i in 1:3){
for(j in 1:3){
if(i<j){
plot(y=pca$scores[,i], x=pca$scores[,j], axes=FALSE); box()
} else if(i==j){
plot(density(pca$scores[,i]), axes=FALSE, main=""); box()
text(0, .5, labels=colnames(pca$scores)[i])
} else {
biplot(pca, choices=c(j,i), main="", xaxp=c(-10,10,1), yaxp=c(-10,10,1))
}
}
}
windows()
coplot(y~x|z, randu)