R 按组执行j时获取向量
我有一个很琐碎的问题,我找不到答案。 使用mtcars数据:R 按组执行j时获取向量,r,data.table,R,Data.table,我有一个很琐碎的问题,我找不到答案。 使用mtcars数据: library(data.table) data(mtcars) mtcars<-as.data.table(mtcars) mtcars <- mtcars[,.N, by=cyl] mtcars cyl N 1: 6 7 2: 4 11 3: 8 14 我是否可以直接将N列作为向量而不是数据表的列来获取?尝试以下操作: library(data.table) data(mtcars) mtc
library(data.table)
data(mtcars)
mtcars<-as.data.table(mtcars)
mtcars <- mtcars[,.N, by=cyl]
mtcars
cyl N
1: 6 7
2: 4 11
3: 8 14
我是否可以直接将N列作为向量而不是数据表的列来获取?尝试以下操作:
library(data.table)
data(mtcars)
mtcars <- as.data.table(mtcars)
mtcars <- mtcars[,.N, by=cyl]$N
mtcars
> [1] 7 11 14
如果要使用base R执行此操作,可以使用:
sapply(unique(mtcars$cyl), function(x) sum(mtcars$cyl == x))
与mtcars[,.N,by=cyl]$N一样,您可以使用一些基本的R方法来提取列mtcars$N或mtcars[[N]]Fyi,用向量覆盖mtcars会让任何阅读您的代码的人感到困惑,因为它被广泛认为是一个数据集。或tablemtcars$cyl@docendodiscimus如果他们想维持群体的秩序,就不会这样。表将按气缸对结果进行排序。