我希望能够按照id列对数据表进行分组,然后计算每个id出现的次数。具体操作如下:
这很好,但我希望N列有不同的名称(例如
但这导致了
dt <- data.table(id = c(1, 1, 2))
dt_by_id <- dt[, .N, by = id]
dt_by_id
id N
1: 1 2
2: 2 1
这很好,但我希望N列有不同的名称(例如
count
)。 帮助文档中说:
如何在创建.N是一个整数,长度为1,包含组中的行数。 当列名未知且通常很方便时,这可能非常有用。 当按i分组时,对于i的每一行,.N是匹配到x的行数,无论nomatch是NA还是0。 在结果中将其重命名为N(没有点)(否则称为“.N”的列可能会与.N变量冲突,请参见FAQ 4.6以获取更多详细信息和示例),除非它明确地命名; ...。
dt_by_id
数据表时“明确命名”N列? (我知道如何在之后将其重命名。) 我尝试了dt_by_id <- dt[, count = .N, by = id]
但这导致了
Error in `[.data.table`(dt, , count = .N, by = id) :
unused argument (count = .N)
dt[, .(count=.N), by = id]
。如果你喜欢的话,这与dt[, list(count=.N), by = id]
类似。 - AntoniosK