所以我想计算一个不同的列值。这是该数据帧:在R中的数据帧的列中计算不同的值
asa
----
aa
bb
aa
aa
bb
cc
dd
想要得到的:
asa | n
--------
aa | 3
bb | 2
cc | 1
dd | 1
我已经尝试使用ddply从Counting unique/distinct values by group in a data frame做此代码:(可重复)
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”)。必须有一种方法。谢谢你提前
试试这个:'表(ASA)' –
我可以设定值的变量n的一个? – Elbert
呵呵?把它放在像asad < - data.frame(table(asa))'这样的data.frame中,然后改变它的名字,例如'name(asad)< - c(“asa”,“n”)' –