次のようなデータフレームがあります。
Date Process Duration
1/1/2012 xnit 10
1/1/2012 xnit 15
1/1/2012 xnit 20
1/2/2012 telnet 80
1/2/2012 telnet 50
1/2/2012 telnet 40
8/1/2012 ftp 3
8/1/2012 ftp 11
8/1/2012 ftp 12
x<-data.table(x) に変換した後:
次のように、各ジョブの平均を計算できます。
x<-x[, mean := mean(Duration), by = Process]
特定の日付の期間を平均と比較するのが好きです。私はこれを試しました:
x<-x[, Aug1 := subset(x, Date==as.Date(c("2012-08-01")))$Duration, by = Process]
この値を取得したら、Aug1 列を各プロセスの平均と比較して外れ値を調べます。ただし、このコマンドは完了するまでに非常に長い時間がかかります。これを行うより良い方法はありますか?