Displaying 20 results from an estimated 10000 matches similar to: "Inconsistency in as.data.frame.table for stringsAsFactors"
2009 Jun 23
1
Documentation/software inconsistency in `:` and seq
In 2.8.1/Windows:
According to ? :
Details:
For numeric arguments 'from:to' is equivalent to 'seq(from, to)' ...
Value:
For numeric arguments, a numeric vector. This will be of type
'integer' if 'from' and 'to' are both integers and representable
in the integer type, otherwise of type 'numeric'....
The first claim
2013 Feb 11
2
stringsAsFactors
I think your idea to remove the warnings is excellent, and a good compromise. Characters
already work fine in modeling functions except for the silly warning.
It is interesting how often the defaults for a program reflect the data sets in use at the
time the defaults were chosen. There are some such in my own survival package whose
proper value is no longer as "obvious" as it was
2009 Feb 17
2
cumsum vs. sum
I recently traced a bug of mine to the fact that cumsum(s)[length(s)]
is not always exactly equal to sum(s).
For example,
x<-1/(12:14)
sum(x) - cumsum(x)[3] => 2.8e-17
Floating-point addition is of course not exact, and in particular is
not associative, so there are various possible reasons for this.
Perhaps sum uses clever summing tricks to get more accurate results?
In some
2008 Nov 21
1
Bug in Kendall for n<4?
> library(Kendall)
> Kendall(1:3,1:3)
WARNING: Error exit, tauk2. IFAULT = 12 <<<<<<
tau = 1, 2-sided pvalue =1
I believe Kendall tau is well-defined for this case and the reported
value is correct; isn't it a bug to give a warning? (And if, e.g.,
the pvalue is not well-defined in this case, wouldn't it be better to
return NA or NaN or something?) Also,
2019 Mar 12
3
as.data.frame.table() does not recognize default.stringsAsFactors()
Reporting a possible inconsistency or bug in handling stringsAsFactors in as.data.frame.table()
Here is a simple test
> options()$stringsAsFactors
[1] TRUE
> x<-c("a","b","c","a","b")
> d<-as.data.frame(table(x))
> d
x Freq
1 a 2
2 b 2
3 c 1
> class(d$x)
[1] "factor"
>
2020 Apr 12
3
stringsAsFactors
The NEWS for R 4.0.0 says "R now uses a stringsAsFactors = FALSE
default, and hence by default no longer converts strings to factors in
calls to data.frame() and read.table()."
This seems to have been implemented by setting options(stringsAsFactors
= FALSE) in the main R profile. However, setting
options(stringsAsFactors = NULL)
reverts to the same behavior as the old
2016 Feb 18
2
should `data` respect default.stringsAsFactors()?
Hiya,
Probably been debated elsewhere....
I note that R's `data` function does not respect default.stringsAsFactors
By my lights, it should, especially as it is documented to call read.table, which DOES respect.
Oh, but: http://r.789695.n4.nabble.com/stringsAsFactors-FALSE-tp921891p921893.html
Compelling. I have to agree.
So, I change my mind.
By my lights, `data` should then be
2020 Apr 13
2
stringsAsFactors
Further, in addition to the `val <- FALSE` patch a few hours ago by
Martin, the line after should also be changed
- if(!is.logical(val) || is.na(val) || length(val) != 1L)
+ if(!is.logical(val) || length(val) != 1L || is.na(val))
## Consider
Sys.setenv("_R_CHECK_LENGTH_1_LOGIC2_" = "TRUE")
options(stringsAsFactors = c(TRUE, FALSE))
default.stringsAsFactors() # correct
2020 Apr 13
1
stringsAsFactors
Hello,
I also want to report 2 missed cases of stringsAsFactors=TRUE in base:
1. grid.expand() still uses hard stringsAsFactors=TRUE in its arguments.
2. as.data.frame.table() also keeps factors after conversion from table.
>>>>>> Duncan Murdoch
>>>>>> on Sun, 12 Apr 2020 08:57:14 -0400 writes:
>
> > The NEWS for R 4.0.0 says "R now uses
2009 Jun 25
2
stringsAsFactors has no impact in expand.grid()?
Hi
I have the feeling, that the argument stringsAsFactors has no impact in the
function expand.grid:
a <- c("PR", "NC", "A2", "BS")
b <- c(1, 0.5, 0.25, 0.125, 0.0625, 0.03125)
class(expand.grid(css, fscs, stringsAsFactors=FALSE)[[1]])
[1] "factor"
class(expand.grid(css, fscs, stringsAsFactors=TRUE)[[1]])
[1] "factor"
Also, when
2008 Nov 17
2
stringsAsFactors = FALSE
Hi all,
I love the option to not automatically convert strings into factors,
but there are three places that the current option doesn't work where
I think it should:
options(stringsAsFactors = FALSE)
str(expand.grid(letters))
str(type.convert(letters))
df <- read.fwf(textConnection(paste(letters,collapse="\n")), 1)
str(df)
I think type.convert and read.fwf can be fixed by
2009 May 18
2
stringsAsFactors param in expand.grid not working
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
2009 May 18
2
stringsAsFactors param in expand.grid not working
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
2009 Mar 31
1
as.data.frame peculiarities
The documentation of as.data.frame is not explicit about how it generates
column names for the simple vector case, but it seems to use the character
form of the quoted argument, e.g.
names(as.data.frame(1:3))
[1] "1:3"
But there is a strange case:
names(as.data.frame(c("a")))
[1] "if (stringsAsFactors) factor(x) else x"
I feel fairly comfortable calling this a
2016 Feb 19
4
should `data` respect default.stringsAsFactors()?
Hi Peter,
Sorry if I was not clear. Perhaps an example will make my point:
> data(iris)
> class(iris$Species)
[1] "factor"
> write.table(iris,'data/myiris.tab')
> data(myiris)
> class(myiris$Species)
[1] "factor"
> rm(myiris)
> options(stringsAsFactors = FALSE)
> data(myiris)
> class(myiris$Species)
[1] "factor"
>
2016 Feb 19
2
should `data` respect default.stringsAsFactors()?
Aha... Hadn't noticed that stringsAsFactors only works via as.is in read.table.
Yes, the doc should probably be fixed. The code probably not -- packages loading different data sets depending on user options is an even worse idea than hav?ng the option in the first place... (I don't mean having the possibility, I mean the default.stringsAsFactor thing).
In general, read.table() gets
2019 Mar 15
2
as.data.frame.table() does not recognize default.stringsAsFactors()
I have to disagree with both Peter and Martin on this.
The underneath issue is that the automatic conversion of characters to factors by the
data.frame functions was the single most egregious design blunder in the Statistical
Models in S book, and we are still living with it.? The stringsAsFactors option was a
compromise to let users opt out of that mistake (one I had to fight hard for).??? In
2018 Feb 16
2
SE for all levels (including reference) of a factor atfer a GLM
Dear R-er,
I try to get the standard error of fitted parameters for factors with a
glm, even the reference one:
a <- runif(100)
b <- sample(x=c("0", "1", "2"), size=100, replace = TRUE)
df <- data.frame(A=a, B=b, stringsAsFactors = FALSE)
g <- glm(a ~ b, data=df)
summary(g)$coefficients
# I don't get SE for the reference factor, here 0:
2020 Apr 13
2
stringsAsFactors and type.convert()
If read.table() is defaulting to "character" instead of "factor" data type, shouldn't type.convert() also default to "character" in R 4.0.0?
This would seem like a good time to change the default to type.convert(as.is=TRUE), to align it with the new default in read.table and data.frame. I think many R >=4.0.0 users would be happy with as.is=TRUE as the default
2020 Apr 20
1
stringsAsFactors and type.convert()
Dear Martin,
Thank you for the well-reasoned response. I realized I was rather late to make this suggestion for 4.0.0, changing a somewhat low-level function that can indeed affect packages.
I was just reviewing some R user scripts that were using type.convert(), mainly on data frames. In all cases, people were passing as.is=TRUE, so I was reminded that I would not be the only user who would