在r中,当你向下移动一列时,计算一个值在该列中出现的次数

jucafojl  于 2023-04-27  发布在  其他
关注(0)|答案(2)|浏览(109)

我想在数据框中添加一列,当你向下移动每一行时,它会计算在不同列中出现的次数。例如,如果Name是我想计算出现次数的列:

Row    Name
 1      Tom
 2      Dave
 3      Tom
 4      Brent
 5      Brent
 6      Tom

我想把第三栏改为:

Row    Name    Count
 1      Tom      1
 2      Dave     1
 3      Tom      2
 4      Brent    1
 5      Brent    2
 6      Tom      3
3b6akqbq

3b6akqbq1#

library(tidyverse)

data |> 
  group_by(Name) |> 
  mutate(Count = n())

以上应该行得通

soat7uwm

soat7uwm2#

library(dplyr)

df = data.frame(Name=c('Tom','Dave','Tom','Brent','Brent','Tom'))
df %>% group_by(Name) 
  %>% mutate(Count=1:length(Name)) 
  %>% ungroup()

产生

# A tibble: 6 × 2
  Name  Count
  <chr> <int>
1 Tom       1
2 Dave      1
3 Tom       2
4 Brent     1
5 Brent     2
6 Tom       3

相关问题