[R] R design (was "Variable passed to function not used in function in select)
Peter Dalgaard
p.dalgaard at biostat.ku.dk
Wed Nov 12 00:42:36 CET 2008
Rolf Turner wrote:
>
> On 12/11/2008, at 11:29 AM, Peter Dalgaard wrote:
>
>> Ben Bolker wrote:
>>
>>>
>>> Sometime soon when I have the time and energy I will start
>>> campaigning for an additional "drop" argument to subset that
>>> does what one expects (!!??) with subsetted factor variables ...
>>
>> Not that one again! For at least one other value of one, the expectation
>> is the opposite: Factor levels do not go away just because they happen
>> not to be present in data.
>>
>> fct <- lapply(dd, is.factor)
>> dd[fct] <- lapply(dd[fct], "[", drop=TRUE)
>>
>> and begone with it...
>
> (Don't you mean ``be done with it''?)
I did mean as in "begone with the nuisance", but you're the native
English speaker (to some ixtent, enniwhy...).
(Actually, the last line could have had lapply(dd[fct],factor), I just
got confused about whether in would preserve the level order.)
> What would break if subset.default() were changed to:
>
> function (x, subset, drop=FALSE, ...)
> {
> if (!is.logical(subset))
> stop("'subset' must be logical")
> x[subset & !is.na(subset),drop=drop]
> }
>
> ???
Nothing, but Ben wants to fix (as in cat ;-) ) subset.data.frame() and
drop= does otherwise there.
> data.frame(foo=factor(1:2,labels=c("M","F")))[1,,drop=FALSE]
foo
1 M
> data.frame(foo=factor(1:2,labels=c("M","F")))[1,,drop=TRUE]
[1] M
Levels: M F
> cheers,
>
> Rolf
>
> ######################################################################
> Attention:This e-mail message is privileged and confidential. If you are
> not theintended recipient please delete the message and notify the
> sender.Any views or opinions presented are solely those of the author.
>
> This e-mail has been scanned and cleared by
> MailMarshalwww.marshalsoftware.com
> ######################################################################
--
O__ ---- Peter Dalgaard Øster Farimagsgade 5, Entr.B
c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
More information about the R-help
mailing list