« クラスカル・ウォリス検定 | トップページ | てんかん発作と心因性(ヒステリー性)発作 »

2006/09/21

Rの使い方メモ

 前回のエントリーに引き続き統計関連のエントリーだが、今手元にあるSPSSではクラスカル・ウォリス検定を行った後の多重比較を行うことが出来ない。そのため、何か別の手だてを考える必要が生じ、結局Rに行き着いた。しかし、これはコマンドを書くことで分析を実行し、なおかつ分析を行うにはその行いたい分析の手続きを記述したソースファイルを自分でRに読み込ませなければならない。
 そこまでの理解力はないとも思ったが、他にMacで使える有力な統計プログラムがなく、これ以外に方法がないのであればやってみるしかないのだろう。

1.ダウンロード
 Rおよび分析に必要なソースファイルは青木先生のR による統計処理のページからたどっていくと手に入る(Rは「Rを使うためにどうしたらいいの?」から、ソースファイルは「定義した全ての関数をダウンロード」から)。
R:
MacではRのGUIもダウンロードすると、一般的なアプリケーションに近い形で使える。起動したら、環境設定から「起動」を選び、初期作業ディレクトリをHomeディレクトリ下の英語名のフォルダ(私は単純に「R」としている)に指定しておくと便利なようだ。
ソースファイル:
Macでは上記のサイトの「定義した全ての関数をダウンロード」をcontrol+クリックし、ポップアップメニューから「リンク先のファイルをダウンロード」を選択、デスクトップに保存する。それを先ほどの初期作業ディレクトリに入れておく。

2.ソースファイルの読み込み
 Rを立ち上げ、ファイルメニューの「ソースを読み込む...」から先ほどのソースファイルを指定すると、そのソースファイルを読み込んでくれる。ちなみに私の環境では1005行目、1006行目に構文エラーが出て読み込んではくれなかった。
 これを読み込んでくれると、一気に分析の方法が増えるのだが、仕方がないので先ほどのサイトより個別にソースを持ってくる。サイトからソースをコピーし、Rで新規文書を作り、そこにペーストし、先ほどのフォルダに保存する。後はファイルメニューから「ソースを読み込む...」でそのファイルを指定することになる。

3.データの用意
 データは直に打ち込んでもよいが、SPSSのデータファイルを読み込んでもくれるよう。その際にデータの塊に名前を付けておける。私はenter.savという名前のSPSSデータファイルをdfという名前で読み込んだ。そのコマンドは以下の通り
df <- read.table("enter.sav", header=TRUE)
 なお、カテゴリカルデータはそれがカテゴリー(例えば、性別、群分け)であり数値ではないことをRに教える必要がある。それは次のコマンドで行う。ここでは2列目に男性を1で、女性を2で表わすデータが入っており、その列の名前をdf[,2]として、それがカテゴリカルデータであること、1は男性、2は女性を表わすことをRに伝えている。
df[,2] <- factor(df[,2], levels=1:2, labels=c("男", "女"))

4.分析を行う
 いよいよ分析を行うが、クラスカル・ウォリス検定を多重比較まで含めて行うには、以下のコマンドを使う。ここではaに連続変量が、bにカテゴリカルデータが来る。
kruskal.wallis(a, b)
 データの塊dfの3列目に連続変量が入っているとすれば、次のように書ける。
kruskal.wallis(df[,3], df[,2])
 どうやらRでは○列目を表わす記号は「データの塊の名前[,○]」という形をとるようだ。カンマが何のためにあるのかが分からないが、もしかすると○行目を表わす時には「データの塊の名前[○,]」となり、列または行を表わすために行または列をカンマにしているのかもしれない。ここに関しては試していないため分からない。
 ちなみに分散分析を行うためのコマンドは以下の通り。ここでも3列目が連続変量、2列目がカテゴリカルデータ(群)となっている。
aov(df[,3] ~ df[,2], data=df)
 なお、SPSSとは違い、各群ごとの平均値などは算出してくれない。また分散の等質性の賢弟もしてくれない。それは何か別のコマンドでやらなければならないのだろうけれども、それは分からなかった。

 といったところで力尽きる。とりあえず、クラスカル・ウォリス検定の多重比較は出来たのでよしとして、それをメモとして残しておく。

|

« クラスカル・ウォリス検定 | トップページ | てんかん発作と心因性(ヒステリー性)発作 »

コメント

はじめまして。
総合病院精神科で心理職をしております
ロテ職人と申します。

クリスカル・ウォリスの検定を行った後の多重比較は
普通、マン・ホイットニーのU検定でやりますよね?

クリスカル・ウォリスができて
U検定ができないバージョンのSPSSってあるんでしょうか?

余計なお世話とは思いますが
一応確認まで…。

投稿: ロテ職人 | 2006/09/24 19:23

はじめまして、ロテ職人様。前からブログはのぞかせていただいてました。

さて、クラスカル・ウォリス検定を行った後の多重比較ですが、私が参考にしたのはリンクにある通り青木先生のサイトで、他にもいくつかのサイトでScheffeの方法というのが勧められていたためそれに倣いました。

ご指摘を受けて少し調べてみましたが、他にSteelの方法を使う、という方もおられるようで、よく分かりません。もともとノンパラはよく理解できていないところもあるため、少し整理して改めて書いてみたいと思います。少々お待ちください。

投稿: nocte | 2006/09/26 10:35

10/2追記

9/29の時点で関数のソースファイルが改定されており、読み込んでみたら私の環境(OS X 10.4.8)でも読めました。

投稿: nocte | 2006/10/03 16:24

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/88325/11978687

この記事へのトラックバック一覧です: Rの使い方メモ:

« クラスカル・ウォリス検定 | トップページ | てんかん発作と心因性(ヒステリー性)発作 »