r语言 - 对行的筛选操作返回数据框而不是数据表



我注意到当我使用以下数据子集时,它返回了一个数据框。

   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)

最新更新