anovakun使ってみる(データセット編)

久しぶりの更新。
今日は、anovakunの使い方についてのメモ。いつもの事ながらKosugitti先生に感謝。いろいろと復習しながら七転八倒します。

まずは、File→New→R scriptで新しいコマンドを用意。
今回はsave as anova.Rとしてみました。

f:id:jigawa91:20120525200815p:image

さて復習がてらデータの読み込み。

anova <- read.csv(file.choose(),head=T,sep=”,”,na.strings=”NA”)

今回のデータもブログ用のダミーデータです。
まずは変数と構造の確認
names(anova)
str(anova)
f:id:jigawa91:20120525200816p:image

いい感じです。ちなみにintというのは、数字データということ。
sex, age, job, jobposition, workinghourは個人属性で残りのM1~M6はちょっとした質問紙の質問項目のデータです。

さて、復習がてら個人属性の変数を加工します。
anova$sex<-factor(anova$sex,levels=0:1,labels=c(“male”,”female”))
#性別をカテゴリカルデータとして定義。maleとfemale

anova$job<-factor(anova$job,levels=0:2、labels=c(“Dr”,”Ns”,”CP”))
#職種を定義付け。今回は医師と看護師と心理士という名前にしてみました。

本当は他のvariablesも定義付けする必要があるけど、今日使うのこれだけなので置いておきます。

出来たかどうか確認。できてるみたいです。

f:id:jigawa91:20120525200818p:image

定義付けしたsexとjobに注目すると、int形式ではなく、Factorになっています。
w/ の後は水準数ですね。

とりあえず、質問紙の得点を従属変数、job(あえてDrとNsだけを使ってみる)を独立変数とした一元配置の分散分析を行おうと思うのでまずは質問紙の得点を算出(今回は適当に合算してます)

anova$mscore<-anova$M1+anova$M2+anova$M3+anova$M4+anova$M5+anova$M6)

続いてこれだけからなるデータセットを作成。
anova1<-subset(anova,job==”Ns”|job==”Dr”,select=c(job,mscore))

subset 関数を使えば使いたい水準を減らしたり、variablesを限定したデータセットを作るのも簡単簡単です。
ちなみに「|」はandというような意味でとらえればいいと思います。
もしたくさん水準があって1つの水準だけ減らしたい時は、「!=」とすれば~以外というような使い方もできるそうです。

ただ、subsetを使って水準数を減らした時には注意が必要です。
ためしにちょっとstr()を使って構造を確認。view()でデータを右上に表示しています。

f:id:jigawa91:20120525200819p:image

なんとsubsetを使って水準を減らした場合には、実際にはデータはないのに構造上は水準が減りません。このままだとanovakunではエラーが出てしまいます。

だからもう一度factor型にチェンジ。

anova1$job<-factor(anova1$job)
これでもう一度構造を確認。
str(anova1)

f:id:jigawa91:20120525200820p:image

はい、さっきは3水準のままだったのが2水準になりました。これは結構注意がいりそうですね。

これでデータセットは完了です。

今回七転八倒して分かったことは、なにか困った時にはstr()を使って構造を確認すること。エラーが出る時はこの型がうまくいっていないことが多いということですかね。。

とりあえず今回はここまで。
次回は、実際にanovakunを使ってみようと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です