elements that appear only once
A slight variation on your solution but hopefully more readable: names( which( table(a) == 1 ) ) Regards, Adai
On Wed, 2006-02-22 at 09:11 +0000, Robin Hankin wrote:
Hi. I have a factor and I want to extract just those elements that appear exactly once. How to do this? Toy example follows.
> a <- as.factor(c(rep("oak",5) ,rep("ash",1),rep("elm",1),rep
("beech",4)))
> a
[1] oak oak oak oak oak ash elm beech beech beech beech Levels: ash beech elm oak
> table(a)
a
ash beech elm oak
1 4 1 5
>
So I would want "ash" and "elm", because there is only one ash and only one elm in my wood. My Best Effort:
> names(table(a)[table(a)==1])
[1] "ash" "elm"
>
This doesn't seem particularly elegant to me; there must be a better way! anyone? -- Robin Hankin Uncertainty Analyst National Oceanography Centre, Southampton European Way, Southampton SO14 3ZH, UK tel 023-8059-7743
______________________________________________ R-help at stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html