ddply
データ フレームを分割し、チャンクを関数に送信するために使用しています。行の前にddply
、 を設定しi=1
ます。次に、関数内でインクリメントi
して、データの各チャンクが新しい番号を取得するようにします。ただし、これを実行するとi
、関数が呼び出されるたびに 1 にリセットされます。これは、関数の外側が新しいデータのチャンクを送信するi
たびに再割り当てされているためだと思います。ddply
関数の外でインクリメントし、その数値をデータとともに送信する方法はありますか?
編集:: 呼び出し行は次のとおりです。
rseDF <- ddply(rseDF, .(TestCompound), .fun = setTheSet)
関数は次のとおりです。
##Set The Set Column
setTheSet <- function(df) {
if (df[,"TestCompound"] == "DNS000000001") df[,"Set"] <- "Control"
else {df[,"Set"] <- i
i <<- i+1}
return(df)
}