組內轉置的向量什麼是生成一個data.table單獨的列的函數返回的元素,由組計算的data.table方法?data.table
考慮data.table:
library(data.table)
data(iris)
setDT(iris)
如果函數range()
,我想類似的輸出:
iris[, .(min_petal_width = min(Petal.Width),
max_petal_width = max(Petal.Width)
), keyby = Species] # produces desired output
但使用range()
功能。
我可以使用dcast
,但它的醜陋:
dcast(
iris[, .(petal_width = range(Petal.Width),
value = c("min_petal_width", "max_petal_width")),
keyby = Species],
Species ~ value, value.var = "petal_width")
我希望有一個更簡單的表達,沿着線:
iris[, (c("min_petal_width","max_petal_width")) = range(Petal.Width),
keyby = Species] # doesn't work
這並不返回一個新的data.table,但它會修改虹膜就地data.table增加兩列,它 – digEmAll
@digEmAll,哦,你是對的,當然。 –