No.11058 レコード単位のソートについて  【ssung】 2009/10/14(Wed) 03:49

初めて質問させて頂きます.

変数の正規性,2群の分散共分散の等質性も満たさないデータセットでしたが
線形判別関数を用いて個体ごどのZスコアを求めました.

群内の個体のランキングを調べたいのですが
lapply(xxx, sort)
sort(xxx) などいろいろ試みましたが
でレコード単位ではソートできなかったです.
会社名とZスコアをセットで並べ替えたいです.

忙しいところすみませんがよろしくお願いします。
> ttt<- data.frame(z=z,group=group , name=会社名)
> ttt
z group name
1 -0.21862196 nondefault A
2 0.31647863 nondefault B
3 -3.98771732 nondefault   C
4 -0.45124884 nondefault D
5 -2.14110328 nondefault E
..... ...... ...//... ...... ...... ......
52 2.82890507 default F
53 0.44646034 default G
54 0.54555405 default H
55 -1.19059763 default I
56 1.44250701 default J
57 1.86579121 default K

> xxx<-split(ttt[,c(1,3)], ttt$group)
> xxx
$default
z name
52 2.82890507 F
53 0.44646034 G
54 0.54555405   H
55 -1.19059763 I
56 1.44250701 G
..... ...... ...//... ...... ...... ......

$nondefault
z name
1 -0.21862196 A
2 0.31647863 B
3 -3.98771732 C
4 -0.45124884 D
5 -2.14110328 E

No.11059 Re: レコード単位のソートについて  【青木繁伸】 2009/10/14(Wed) 07:45

group ごとに,第1ソートキーを z,第2ソートキーを name としてソートしたいと言うことですか?order と lapply を使えばよいのでは?
> xxx <- split(ttt, ttt$group)
> lapply(xxx, function(y) y[order(y$z, y$name),])
$default
z group name
55 -1.1905976 default I
53 0.4464603 default G
54 0.5455541 default H
56 1.4425070 default J
57 1.8657912 default K
52 2.8289051 default F

$nondefault
z group name
3 -3.9877173 nondefault C
5 -2.1411033 nondefault E
4 -0.4512488 nondefault D
1 -0.2186220 nondefault A
2 0.3164786 nondefault B

No.11064 Re: レコード単位のソートについて  【ssung】 2009/10/14(Wed) 15:07

先生ありがとうございます。業種の列も入れて状態が見やすくなりました.
まだRの初心者で一つ一つ打ちながらコマンドを覚えていますが面白いです.
これからも頑張りたいと思います.m( _ _ )m

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