私はこのようなデータを持っています(これは説明のためのテストデータです):
test <- matrix(c(1, 1, 1, 2, 2, 2 , 529, 528, 528, 495, 525, 510,557, 535, 313,502,474, 487 ), nr=6, dimnames=list(c(1,2,3,4,5,6),c("subject", "rt1", "rt2")))
そして、私はそれをこれに変える必要があります:
test2<-matrix(c(1,1,1,2,2,2,529,528,528,495,525,510,"slow","slow","fast","fast","slow","slow",557, 535, 313,502,474, 487,"fast","fast","slow","slow","fast","fast"), nr=6, dimnames=list(c(1,2,3,4,5,6),c("subject", "rt1","speed1", "rt2","speed2")))
speed1列は次のように計算されます。被験者の中央値rt1を計算します。個々の値が中央値よりも小さい場合、スコアは速くなります。rt1の個々のセル値が中央値よりも大きい場合、スコアは遅くなります。セル値が中央値にある場合、セルは分析から削除され(削除またはNA)、その対象の中央値が再計算されます。このプロセスはspeed2列に対して繰り返されますが、rt2を使用します。
おそらく、ある種のifステートメントですか?
明確にするために:各サブジェクトの中央値(合計で40あります)と、中央値(そのサブジェクトの場合)にある値を除外し、中央値を再計算(そのサブジェクトの場合)にします。