Re: [R] stringsAsFactors param in expand.grid not working

2009-05-19 Thread Martin Maechler
 RT == Rolf Turner r.tur...@auckland.ac.nz
 on Tue, 19 May 2009 11:02:08 +1200 writes:

RT On 19/05/2009, at 10:20 AM, Steve Lianoglou wrote:

 Hi all,
 
 I've (tried) to look through the bug tracker, and gmane-search the  
 R list to
 see if this has been mentioned before, and it looks like it hasn't.

Yes, thank you.

That's a bug on which we  (R-core) currently work.
More about this, and notably about Rolf's (.)*^%)(#%$)
proposal on the   R-devel  list.

Martin Maechler


 According to the R 2.9.0 release notes[1], the expand.grid function  
 should now
 take a stringsAsFactor=LOGICAL argument which controls whether or  
 not the
 function coerces strings as factors. While the parameter is indeed  
 in the
 function, a quick examination of the function's source shows that  
 the value
 of this argument is never checked, and all strings are converted to  
 factors
 as a matter of course.
 
 The fix is pretty easy, and I believe only requires changing the  
 `if` check
 here:
 
 if (!is.factor(x)  is.character(x))
 x - factor(x, levels = unique(x))
 
 To:
 
 if (!is.factor(x)  is.character(x)  stringsAsFactors)
 x - factor(x, levels = unique(x))
 
 I can open a ticket regarding this issue and add this there if  
 necessary.
 
 Thanks,
 -steve
 
 [1] http://article.gmane.org/gmane.comp.lang.r.general/146891

RT While we're at it --- would it not make sense to have the  
RT stringsAsFactors
RT argument (once it's working) of expand.grid() default to options() 
RT $stringsAsFactors,
RT rather than to FALSE?

RT This would make no difference to me personally, since I set
RT options(stringsAsFactors=FALSE) in my .Rprofile.  But it might make some
RT people happier 

RT cheers,

RT Rolf Turner

RT ##
RT Attention:\ This e-mail message is privileged and confid...{{dropped:9}}

RT __
RT R-help@r-project.org mailing list
RT https://stat.ethz.ch/mailman/listinfo/r-help
RT PLEASE do read the posting guide 
http://www.R-project.org/posting-guide.html
RT and provide commented, minimal, self-contained, reproducible code.

__
R-help@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.


[R] stringsAsFactors param in expand.grid not working

2009-05-18 Thread Steve Lianoglou
Hi all,

I've (tried) to look through the bug tracker, and gmane-search the R list to 
see if this has been mentioned before, and it looks like it hasn't.

According to the R 2.9.0 release notes[1], the expand.grid function should now 
take a stringsAsFactor=LOGICAL argument which controls whether or not the 
function coerces strings as factors. While the parameter is indeed in the 
function, a quick examination of the function's source shows that the value 
of this argument is never checked, and all strings are converted to factors 
as a matter of course.

The fix is pretty easy, and I believe only requires changing the `if` check 
here:

if (!is.factor(x)  is.character(x)) 
x - factor(x, levels = unique(x))

To:

if (!is.factor(x)  is.character(x)  stringsAsFactors) 
x - factor(x, levels = unique(x))

I can open a ticket regarding this issue and add this there if necessary.

Thanks,
-steve

[1] http://article.gmane.org/gmane.comp.lang.r.general/146891

__
R-help@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.


Re: [R] stringsAsFactors param in expand.grid not working

2009-05-18 Thread Rolf Turner


On 19/05/2009, at 10:20 AM, Steve Lianoglou wrote:


Hi all,

I've (tried) to look through the bug tracker, and gmane-search the  
R list to

see if this has been mentioned before, and it looks like it hasn't.

According to the R 2.9.0 release notes[1], the expand.grid function  
should now
take a stringsAsFactor=LOGICAL argument which controls whether or  
not the
function coerces strings as factors. While the parameter is indeed  
in the
function, a quick examination of the function's source shows that  
the value
of this argument is never checked, and all strings are converted to  
factors

as a matter of course.

The fix is pretty easy, and I believe only requires changing the  
`if` check

here:

if (!is.factor(x)  is.character(x))
x - factor(x, levels = unique(x))

To:

if (!is.factor(x)  is.character(x)  stringsAsFactors)
x - factor(x, levels = unique(x))

I can open a ticket regarding this issue and add this there if  
necessary.


Thanks,
-steve

[1] http://article.gmane.org/gmane.comp.lang.r.general/146891


While we're at it --- would it not make sense to have the  
stringsAsFactors
argument (once it's working) of expand.grid() default to options() 
$stringsAsFactors,

rather than to FALSE?

This would make no difference to me personally, since I set
options(stringsAsFactors=FALSE) in my .Rprofile.  But it might make some
people happier 

cheers,

Rolf Turner

##
Attention:\ This e-mail message is privileged and confid...{{dropped:9}}

__
R-help@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.