2016-06-30 4 views

答えて

4

はい、任意の進行状況を使用できます。

library(data.table) 
dt = data.table(a=1:4, b=c("a","b")) 
dt[, {cat("group:",b,"\n"); sum(a)}, b] 
#group: a 
#group: b 
# b V1 
#1: a 4 
#2: b 6 

あなたはfreadとロードcsvファイルの進歩について尋ねる場合、それは自動的に大きなデータセットのために表示されます。また、Sergeyがコメントで述べたように、fread[.data.tableの両方で詳細情報を入手するには、verbose引数を使用できます。

グループの割合を処理する場合。 @のjangoreckiの優秀な答えにフォローアップ

grpn = uniqueN(dt$b) 
dt[, {cat("progress",.GRP/grpn*100,"%\n"); sum(a)}, b] 
#progress 50 % 
#progress 100 % 
# b V1 
#1: a 4 
#2: b 6 
0

、ここではテキストのプログレスバーを使用する方法です:あなたは `のfread()`のためのプログレスバーを意味するか

library(data.table) 
dt = data.table(a=1:4, b=c("a","b")) 
grpn = uniqueN(dt$b) 
pb <- txtProgressBar(min = 0, max = grpn, style = 3) 
dt[, {setTxtProgressBar(pb, .GRP); Sys.sleep(0.5); sum(a)}, b] 
close(pb)