Message-ID: <E1Pgf8D-00006s-LS@smtprelay06.ispgateway.de>
Date: 2011-01-22T15:12:05Z
From: Moritz Grenke
Subject: two apparent anomalies
In-Reply-To: <4d766359-16c7-4b38-9bdd-9076dc74a716@t35g2000yqj.googlegroups.com>
My explanation for No2:
When coercing a character vector to factor, the current levels are stored.
By choosing a subvector of the factor you don't change the levels of the
factor. So levels(a[1:3]) is still [1] "a" "b" "c" in the last line ...
If you want to reduce levels you need to tell R.
> levels(a[1:3, drop=TRUE])
[1] "a" "b"
________________
Moritz Grenke
http://www.360mix.de
-----Urspr?ngliche Nachricht-----
Von: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] Im
Auftrag von analyst41 at hotmail.com
Gesendet: Samstag, 22. Januar 2011 15:17
An: r-help at r-project.org
Betreff: [R] two apparent anomalies
(1)
> a = c("a","b")
> mode(a)
[1] "character"
> b = c(1,2)
> mode(b)
[1] "numeric"
> c = data.frame(a,b)
> mode(c$a)
[1] "numeric"
(2)
> a = c("a","a","b","b","c")
> levels(as.factor(a))
[1] "a" "b" "c"
> levels(as.factor(a[1:3]))
[1] "a" "b"
> a = as.factor(a)
> levels(a)
[1] "a" "b" "c"
> levels(a[1:3])
[1] "a" "b" "c"
Any explanation would be helpful. Thanks.
______________________________________________
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.