R:附加带有特定值计数的列

R: Append column with count for a specific value

我正在寻找一种简单的方法来对我的 df 进行子集化并附加一个带有频率计数的列。假设我有一个这样的 df:

Name  
JA
JN
JA
JB
JA
JN

我想要这样的结果:

 Name    Frequency 
    JA      3
    JN      2
    JB      1

有什么建议吗?谢谢。

按'Name'和dplyr

分组后,我们可以使用tally
library(dplyr)
df1 %>% 
  group_by(Name) %>%
  tally()

或使用 base R

中的 table
as.data.frame(table(df1[,1]))
#   Var1 Freq
#1   JA    3
#2   JB    1
#3   JN    2

一种方法是使用 data.table

require(data.table)
DT<-data.table(df)
DT[,.(Frequency=.N),by=Name]