No.13334 Re: 多変数による判別分析 【青木繁伸】 2010/08/30(Mon) 17:21
R では,何の準備もしなくても使えます(data(iris) とする必要もありません)。
いきなり,
( result <- disc(iris[1:4], iris[5]) )
とすればよいです。
No.13339 Re: 多変数による判別分析 【R初心者】 2010/08/31(Tue) 09:45
TCHO 年齢 ヘモグロビン 身長 体重 最大血圧 最小血圧 GOT GPT γGTP HDLC 中性脂肪 クレアチニンエクセルで上記データをコピーし
192 81 13.3 157.3 52.8 152 69 32 16 28 70 66 0.82
169 82 14.2 150.5 47.5 156 74 39 21 24 65 40 0.57
204 70 15.3 168.7 60.1 124 69 21 9 30 76 106 0.88
173 71 16 150 56.5 132 73 23 24 33 47 141 0.78
180 61 16.8 160.8 59.2 150 74 19 20 86 56 144 0.74
152 80 13.7 148.2 41.1 146 90 58 45 33 56 85 0.61
166 76 13.4 160.4 60.8 140 77 35 27 198 46 80 0.85
247 72 12.4 145.2 51.6 140 74 18 17 30 73 67 0.67
> b<-read.delim("clipboard")
> disc(b[2:13], b[1])
以下にエラー solve.default(w) :
システムは数値的に特異です:条件数の逆数 = 0
となります。
No.13340 Re: 多変数による判別分析 【青木繁伸】 2010/08/31(Tue) 10:04
別の話題は別のスレッドにすべきですね。
それはともかく,多変量解析の常識として,データ組数は変数の個数より大きくなくてはなりません(逆に言うと,分析に使える変数の個数はデータ組数より小さくなくてはいけませんということ)。
ステップワイズ変数選択法による判別分析なら,判別に役立つ変数を選んでくれますから,上の条件を満たす範囲で結果を得ることができますね。
もう一つ致命的なミスは,判別分析とは群を判別するものですけど,群を表す変数として b[,1] が指定されていますけど,それって TCHO なわけで,群をあらわす変数じゃないですよね。
分析手法の概要と,R プログラムの説明(引数の指定法など)を再確認する必要があります。
● 「統計学関連なんでもあり」の過去ログ--- 043 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る