gpt4 book ai didi

r - 计算 R 中数据框列中的不同值

转载 作者:行者123 更新时间:2023-12-04 11:01:54 25 4
gpt4 key购买 nike

所以我想计算列的不同值。这是数据框:

asa
----
aa
bb
aa
aa
bb
cc
dd

想要得到:

asa |  n
--------
aa | 3
bb | 2
cc | 1
dd | 1

我已经尝试使用来自 Counting unique / distinct values by group in a data frame 的 ddply并执行此代码:(可重现)

asa<-c("aa","bb","aa","aa","bb","cc","dd")
asad<-data.frame(asa)
ddply(asad,~asa,summarise,n=length(unique(asa)))

但是我得到了:

  asa n
1 aa 1
2 bb 1
3 cc 1
4 dd 1

它没有进行计算。请注意,可以随时添加列中的值。所以它并不总是“aa”、“bb”、“cc”和“dd”。它也可以用空格或逗号分隔(“aa bb”,“aa,bb”或“aa,bb”)必须有办法做到这一点。提前谢谢你

最佳答案

我们可以使用table

setNames(as.data.frame(table(df1$asa)), c("asa", "n"))
# asa n
#1 aa 3
#2 bb 2
#3 cc 1
#4 dd 1

或者使用来自dplyrtally

library(dplyr)
df1 %>%
group_by(asa) %>%
tally()
# asa n
# (chr) (int)
#1 aa 3
#2 bb 2
#3 cc 1
#4 dd 1

关于r - 计算 R 中数据框列中的不同值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37134405/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com