当我尝试在data.table上使用来自row_number()
的{{1}}时,会抛出错误。这是一个例子:
dplyr
为什么会发生这种情况?
答案 0 :(得分:2)
dplyr::row_number()
函数具有一个强制性参数,该参数应该是您要为其做行号的列的名称。
在您的示例中,您应该这样写:
library(dplyr)
library(data.table)
mine <- data.table(a = 1:10) %>%
mutate(row_number(a))
因为a
是您要为其添加row_number()
的列的名称。没有这个,R就会抛出错误argument "x" is missing, with no default
。
但是,我建议使用tibble::rowid_to_column()
函数。很干净。
library(dplyr)
library(data.table)
library(tibble)
mine <- data.table(a = 1:10) %>%
rowid_to_column()
我希望有帮助。