我正在尝试从data.table分组的结果中绘制直方图,但似乎无法在发生跟随错误之前生成多个图表:
[.data.table
中的错误(DT ,,, hist(V2,break = 2),by = V1):maxn (3)不是该j列长度(2)的精确倍数
这个玩具示例应该有希望证明这个问题
require( data.table )
DT = data.table(c(1,1,2,2), c(1,2,3,4))
# This works
DT[,plot(V2,V2), by = V1]
# This fails after the first plot
DT[,hist(V2, breaks = 2), by = V1]
关于我做错的任何想法?
答案 0 :(得分:5)
您需要将j
表达式包装在list
中。如果我找到(或记住)我将在...中编辑它的原因。
DT[, list( hist(V2,breaks = 2) ) , by = V1 ]