★ 散布図へのラベル表示 と テーブルへの列追加 ★

3711. 散布図へのラベル表示 と テーブルへの列追加 Shimp 2004/07/15 (木) 12:32
└3714. Re: 散布図へのラベル表示 と テーブルへの列追加 青木繁伸 2004/07/15 (木) 14:11
 └3717. Re^2: 散布図へのラベル表示 と テーブルへの列追加 Shimp 2004/07/15 (木) 22:57


3711. 散布図へのラベル表示 と テーブルへの列追加 Shimp  2004/07/15 (木) 12:32
統計学の質問ではなく,Rの使用方法に関する質問で申し訳ありません。
Excelでやっていたことを少しずつRに移しているのですが,うまくいった時の感激の反面,詰まったときは暗中模索です。


1. 行列にラベルの付いた類似度行列を格納したファイル,例えば
=======hoge.txt=========
    A,  B,  C,  D
A,  0, -1, -2, -3
B, -1,  0, -3, -4
C, -2, -3,  0, -1
D, -3, -4, -1,  0
 =======================
を,
x <- read.table("hoge.txt",sep=",", header=TRUE, row.names=1)
x <- as.matrix(x)
qt4vector <- qt4(x)$vector[,1:3]
cl <- kmeans(qt4vector,3,20)$cluster
plot(qt4vector[,1:2], col = cl, pch = 20)
と,散布図にし,この散布図に元々のラベル(A〜D)を貼りたいと考えています。

text(qt4vector[,1],qt4vector[,2],x[,1],pos=4)
まではたどり着いたのですが,ラベルではなく行列成分がラベルとして表示されてしまいます。
どの様にすれば良いのでしょうか?



2. qt4で得られた固有値ベクトルの一部(I)と,kmeansで得られた帰属グループ番号(II)と,元々のラベル(A〜D)(III)と,を並べて一つの変数にまとめ,色々とソートしつつ眺めてみたいと考えています。

qt4vector <- qt4(x)$vector[,1:3] #(I)の内容
cl <- kmeans(qt4vector,3,20)$cluster #(II)の内容
#(III)の内容はどう書けば良いのか判りません

qt4vector変数に列を追加して,clやラベル文字列を足していけば良いのかとも思うのですが,具体的な操作に思いが至りません。

お手すきの折で構いません。
教えて頂けると幸甚に存じます。宜しくお願い致します。

     [このページのトップへ]


3714. Re: 散布図へのラベル表示 と テーブルへの列追加 青木繁伸  2004/07/15 (木) 14:11
1) 行(列)の名前は row.names(行列),col.names(行列)で取り出せます。row.names(x)[1] は "A" というような具合です。
text(qt4vector[,1],qt4vector[,2],row.names(x),pos=4)

2) データフレームにするのがいいと思います。行列では,文字列と数値は同居できませんので。
df <- data.frame(v1=qt4vector, v2=cl, v3=row.names(x))

     [このページのトップへ]


3717. Re^2: 散布図へのラベル表示 と テーブルへの列追加 Shimp  2004/07/15 (木) 22:57
有り難う御座いました。
これでExcelの出番は,ほぼフロントエンドだけになった様に思います。

     [このページのトップへ]


● 「統計学関連なんでもあり」の過去ログ--- 029 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る