見出し画像

【R統計メモ】GLMM (ロジスティック) のバイナリーデータで要因毎に分けて記述統計を出して Table にする試み

表題の通りです。忘れないように、自分用にメモとして置いてあります。
「こうしたらいいんじゃね?」とか、「いや、効率悪すぎワロタww
などあれば、ご指摘ください。

今回は、GLMMで用いる縦長のデータ(3×4の参加者内計画)を、要因毎に分けて記述統計を作成し、最終的に table にする試みです。
仮に、以下のように3×4の要因を仮定します
そして、学習条件でデータを分けて、各テストの記述統計を作成します。

① 3(学習条件:楽、辛い、逝っちゃう)
② 4(テスト難易度:易、ちょい易、ちょい難、難)


まず、必要なものを準備します。

#必要なものを準備(tidyverseがインストールできない場合は、
#あきらめてweb 版 Rstudio を使用するといいです)
library("tidyverse")
library("psych")
library("knitr")

data<-read.csv("使用するファイル名.csv")

以下のコードで、各条件での合計を含むデータを作成します。

#楽 条件のデータだけを抜き出す
data_楽<-data %>% 
  #必要となる列だけをまず取り出す
  select(参加者ID, 学習条件, テストタイプ, 正誤)%>% 
  #楽の学習条件のデータだけを取り出します
 filter(学習条件 == "楽") %>%
   #グループ化   group_by(ID, TestType, Condition)
#合計を算出する
data_楽_合計<-data_楽 %>%
  summarise(合計 = sum(Ans), .groups = "drop")
 #タテ型のデータをヨコ型にする data_楽_Wider<-pivot_wider(,data_楽_合計
                #タテからヨコに広げる変数の指定                            names_from = テストタイプ,
                           #横にした変数毎に合計をならべる
               values_from = 合計)
#後は、「楽」となっている個所を、「辛い」と「逝っちゃう」に変えて
#同じように合計のデータを作成してください。

以下のコードで、ひとまずテーブルを作成してくれます。


#記述統計の変数を作成する
楽<-describe(data_楽_Wider)

#記述統計の変数を作成する
辛い<-describe(data_辛い_Wider)

#記述統計の変数を作成する
逝っちゃう<-describe(data_逝っちゃう_Wider)

#[,-1]とすると、1列目を削除してくれる(これを入れないとvars列が自動で作成されてしまう)
#digits = 数字 は、小数点を何位まで表示するかを指定
#これで、表を作成してくれる(必要な人は、)
kable(楽[,-1], digits=2)
kable(辛い[,-1], digits=2)
kable(逝っちゃう[,-1], digits=2)

#ちなみに、kable をいろいろアレンジしたい人は、以下をご参考ください
kable(x, format, digits = getOption("digits"), row.names = NA,
  col.names = NA, align, caption = NULL, label = NULL, format.args = list(),
  escape = TRUE, ...)

以上、おしまいです。



この記事が気に入ったらサポートをしてみませんか?