同じ関数を適用したいデータフレームが多数あります。
コンテキスト: 被験者のタイム ウィンドウを記録するデータ フレームがあり、0/1 のインジケーターがあり、そのタイム ウィンドウで偶数が発生したかどうかを示します。例:
ID start stop event
1 0 12 0
1 12 24 0
1 24 36 1
1 36 48 1
2 0 12 0
私が持っているのは、各 ID の最初のイベントの後のすべてのエントリを削除する関数です。たとえば、上記の例では ID = 1、開始時間 = 36 のレコードです。
1 つのデータセットのコードは次のとおりです: (データセットは event1 と呼ばれ、IDT は ID です)
list1 <- which(event1$event == 1)
while(length(list1) >= 1){
id <- event1[ list1[ 1 ] , ]$IDT
idplus1 <- event1[ ( list1[1] + 1) , ]$IDT
b <- which( event1$IDT == id )
if( id == idplus1 ){
event1 <- event1[- ( ( list1[1] + 1 ) : b[ length(b) ] ) , ]
}
list1 <- list1[-1]
}
ここで、4 つのデータセットがあるとします。event1、event2、event3、event4 のそれぞれにこの関数を適用したいのですが、これを行う関数を定義する方法はありますか? ここでラップリーを使用する機会があるべきだと思います...