我注意到当我使用以下数据子集时,它返回了一个数据框。
dplyr::filter(DT,cond)
我总是可以将其转换回数据表,但我很好奇为什么它会返回数据框,以及是否有办法将所有数据保留为数据表格式。这是一个例子
irisDT <- as.data.table(iris)
class(irisDT)
filteredIrisDT <- dplyr::filter(irisDT, Sepal.Length >7)
class(filteredIrisDT)
class(iristDT)
返回为
[1] "data.table" "data.frame"
而class(filteredIrisDT)
返回
[1] "data.frame"
试图使我的代码更精简,不那么冗长。
如果您只想对数据进行子集化,则可以在 R 中使用子集函数。
filteredIrisDT <- subset(irisDT, Sepal.Length >7)