[Rd] repeat bug report: as.factor argument to row / col fails if NULL dimnames
Peter Dalgaard
p.dalgaard at biostat.ku.dk
Fri Dec 12 10:51:26 CET 2008
Prof Brian Ripley wrote:
> I have never seen the report in the repository. There were problems
> with R-bugs at around that time (most email submission was stalled for a
> month or so).
Maybe, but I don't see a PR# on _any_ of Martin Morgan's posts...
> However, I think the problems are far more serious: the help page says
>
> Returns a matrix of integers indicating their column number in a
> matrix-like object.
> ...
>
> as.factor: a logical value indicating whether the value should be
> returned as a factor rather than as numeric.
>
> Value:
>
> An integer matrix with the same dimensions as 'x' and whose
> 'ij'-th element is equal to 'j'.
>
> There is no mention of using the column labels as the values and the
> result was not even a matrix. I certainly expected the factor levels to
> be numeric.
>
> I presume that the intention is to use the column labels (default
> seq_len(nrow(x)) ) in place of the numbers, and to return a factor
> matrix, so I have implemented that for col() and row().
>
> However, I do wonder that anyone was using as.factor=TRUE given that it
> did not do anything like what it was documented to.
There could, I suppose, be applications of the style
library(ISwR)
dd <- data.frame(count=c(caesar.shoe),
caesar=row(caesar.shoe,as.factor=TRUE),
size=col(caesar.shoe,as.factor=TRUE))
anova(glm(count~caesar*size,family=poisson,data=dd))
(as.data.frame.table is better in this case, I know). Notice that this
will break if you change the value to a factor matrix.
It is not clear that a matrix is desired -- an alternative point of view
is that when you request a factor, it is intended to be used along with
long-format data.
> On Mon, 8 Dec 2008, Dan Davison wrote:
>
>> This bug was reported to r-devel by Martin Morgan on 13th May 2008
>> (original email pasted below). However I couldn't locate it in the bug
>> tracker (with searches for row, col, as\.factor) It is still present
>> in today's svn version (rev 47115). I hope I'm doing something useful
>> by bringing it up again. I have not sent this to r-bugs, as I'm
>> concerned that not locating it in the bug tracker could be my failing.
>>
>> D
--
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-devel
mailing list