R 数据帧段的连续编号

R 数据帧段的连续编号,r,dataframe,plyr,R,Dataframe,Plyr,我想给data.frame的段分配连续的数字。我这样试过: library(plyr) ex1 <- mtcars ehh <- ddply(.data=ex1, .variables=c("cyl"), transform, brx_j = c(1:nrow(cyl))) 库(plyr) ex1我们需要seq_沿着而不是1:nrow,因为“cyl”是一个单列,而不是数据框 ddply(.data=ex1, .variables=c("cyl"), transform, brx_j

我想给data.frame的段分配连续的数字。我这样试过:

library(plyr)
ex1 <- mtcars
ehh <- ddply(.data=ex1, .variables=c("cyl"), transform, brx_j = c(1:nrow(cyl)))
库(plyr)

ex1我们需要
seq_沿着
而不是
1:nrow
,因为“cyl”是一个单列,而不是
数据框

ddply(.data=ex1, .variables=c("cyl"), transform, brx_j = seq_along(cyl))
使用
dplyr
,可以使用
row\u number()
函数获取按“cyl”分组后的序列

library(dplyr)
ex1 %>%
     group_by(cyl) %>% 
     mutate(brx_j = row_number())
这也将起作用(基本R):


ex1$brx\u j我想你需要
seq\u沿途(cyl)
,如果你使用的是
dplyr
,那么
ex1%>%group\u by(cyl)%%>%mutate(brx\u j=行数())
替换
nrow
by
长度
-
mtcars$cyl
是一个向量,而不是一个矩阵weet!你们是最棒的!
ex1$brx_j <- ave(1:nrow(ex1), ex1$cyl, FUN=seq_along)
ex1[order(ex1$cyl),]