2017-11-24 9 views
0

大多数の場合、質問が非常に愚かかもしれませんが、文字通り、今週はRで遊ぶために始めました。 私は、しきい値を持つdata.frameを構築しようとしています各被験者について数回(7つの異なる時点)採取した。 私はこれまでのところ、私のデータを整理方法は次のとおりです。繰り返し測定data.frameとggplot

library(ggplot2) 

Subject <- c("1", "1", "1", "1", "1", "1", "1", "1", 
      "2","2","2","2","2","2","2","2", 
      "3","3","3","3","3","3","3","3", 
      "4","4","4","4","4","4","4","4") 

Time <- rep(c(0,1,2,3,4,5,6,7), each = 7) 

Threshold <- c(-17, -24, -27, -40, -25, -23, -37, -40, 
       -11, -12, -11, 0, -4, -7, -7, -4, 
       -1, -24, -38, -34, -29, -14, -21, -16, 
       18, -10, -21, -10, -5, -17, -3, -11) 

Group <- c("Active","Active","Active","Active","Active","Active","Active","Active",   "Active","Active","Active","Active","Active","Active","Active","Active",   "Control","Control","Control","Control","Control","Control","Control","Control", 
"sham","sham","sham","sham","sham","sham","sham","sham") 

を私の理解から、これはデータが(長い形式)反復測定のために配置されなければならない方法ですが、今の質問:どのように私は、たとえば、選択することができ、1に1つの特定の科目の列?

さらに、(Mean, Median)のすべての個体データをgeom_point()グラフに重ね合わせてプロットするとどうすればよいですか?

ありがとうございました。

答えて

0

平均のデータフレームを計算するためにdplyrライブラリを使用し、ポイントと手段をプロットします。一般的に

library(ggplot2) 
library(dplyr) 

Subject <- c("1", "1", "1", "1", "1", "1", "1", "1", 
      "2","2","2","2","2","2","2","2", 
      "3","3","3","3","3","3","3","3", 
      "4","4","4","4","4","4","4","4") 

Time <- rep(c(0,1,2,3,4,5,6,7), each = 4) 

Threshold <- c(-17, -24, -27, -40, -25, -23, -37, -40, 
       -11, -12, -11, 0, -4, -7, -7, -4, 
       -1, -24, -38, -34, -29, -14, -21, -16, 
       18, -10, -21, -10, -5, -17, -3, -11) 

Group <- c("Active","Active","Active","Active","Active","Active","Active","Active", 
      "Active","Active","Active","Active","Active","Active","Active","Active", 
      "Control","Control","Control","Control","Control","Control","Control","Control", 
      "sham","sham","sham","sham","sham","sham","sham","sham") 

# data frame of raw data 
df <- data.frame(Subject, Time, Threshold, Group) 

# data frame of means 
df_means <- group_by(df, Subject) %>% summarize(MeanThresh = mean(Threshold)) 

ggplot(df, aes(x = Subject, y = Threshold, color = Group)) + 
    geom_point() + 
    geom_point(data = df_means, aes(y = MeanThresh), size = 3, color = "black") 

enter image description here

、dplyrはあなたがやりたいことが何でもデータのフィルタリングや他の操作を行うことができますので、私は慎重にそれをよく読んですることをお勧めしたいです。

+0

大変ありがとうございます。そして私が尋ねることができるならば、どうやってX軸に別々の曜日を、次にすべての単一の被験者を散布図の別の点としてプロットすることができますか? ありがとうございます – Flo

+0

私たちはここで評判を得ています。回答が問題を解決したり、そうでなければ価値のある貢献をした場合は、チェックマークをクリックして回答をアップヴォートし、おそらく受け入れます。 –

+0

申し訳ありませんが、私はあまりにもオーバーフローをスタックする新しいです。うん、私はそれを正しくしました:) – Flo

関連する問題