[R] table() of a factor
Robin Hankin
rksh1 at cam.ac.uk
Tue Jun 29 14:14:14 CEST 2010
thanks everyone.
I think the motto should be "always specify the levels of a factor when
you create it
if you possibly can".
best wishes
Robin
On 06/29/2010 12:39 PM, Felix Andrews wrote:
> Just use factor(), not levels(); you can pass a factor to factor() too.
>
>
>> x<- factor(c(rep("a",3),"b","d"), levels = letters[1:5])
>> table(x)
>>
> x
> a b c d e
> 3 1 0 1 0
>
> Cheers,
> -Felix
>
>
> On 29 June 2010 20:59, Robin Hankin<rksh1 at cam.ac.uk> wrote:
>
>> Hi
>>
>> suppose I have a factor 'x':
>>
>>
>>> x<- as.factor(c(rep("a",3),"b","d"))
>>> table(x)
>>>
>> x
>> a b d
>> 3 1 1
>>
>>>
>>>
>> But this is not what I want because
>> I need to include the fact that the count of "c" is zero.
>>
>> I can't just change the levels of x:
>>
>>
>>> levels(x)<- c("a","b","c","d")
>>> table(x)
>>>
>> x
>> a b c d
>> 3 1 1 0
>>
>>>
>> because this records the single "d" in the original 'x' as a "c".
>>
>>
>> What I want is:
>>
>> a b c d
>> 3 1 0 1
>>
>>
>> How to get this from 'x'?
>> (my real application has dozens of levels with complicated names).
>>
>>
>>
>> --
>> Robin K. S. Hankin
>> Uncertainty Analyst
>> University of Cambridge
>> 19 Silver Street
>> Cambridge CB3 9EP
>> 01223-764877
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>>
>
>
>
--
Robin K. S. Hankin
Uncertainty Analyst
University of Cambridge
19 Silver Street
Cambridge CB3 9EP
01223-764877
More information about the R-help
mailing list