On Sun, 14 Nov 2004, Hiroto Miyoshi wrote:
Dear Professor Dalgaard
It is the NA pattern on the left hand side that matters. Does it help to use
seishin[!is.na(seishin) & seishin==""]<-NA
?
Yes! the above line worked perfectly. But why? To me, !is.na(seishin) & seishin=="" seems redundant. If you could explain this, it would be greatly appreciated.
Without it, your logical matrix index contains NA. What do you intend that to do? Do you replace the corresponding element or not? You don't know, so perhaps you set it to NA, whatever the rhs? And do you use up a value on the rhs or not (not relevant if as here you are recycling a single value, except that you need to know how many times to recycle it)?
Prior to 2.0.0, R behaved inconsistently (both within itself and with S) with NA indices in assignments, so now we force the user to say what he intended. This has picked up quite a number of errors.
I do think this would be cleaner and faster using a loop over columns, especially as you probably have factors in the data frame. Read the code of "[<-.data.frame" if you don't see that.
Thank you. -------------------------------- Hiroto Miyoshi [EMAIL PROTECTED] ----- Original Message ----- From: "Peter Dalgaard" <[EMAIL PROTECTED]> To: "Hiroto Miyoshi" <[EMAIL PROTECTED]> Cc: <[EMAIL PROTECTED]> Sent: Sunday, November 14, 2004 7:26 PM Subject: Re: [R] Odd behaviour of R 2.00
2.00"Hiroto Miyoshi" <[EMAIL PROTECTED]> writes:
Dear R users
I have a data frame containing character and numeric variables, whose name is seishin. When I tried to assign NA to "" in the data frame, R,http://www.R-project.org/posting-guide.htmlshowed an error message, such as
seishin[seishin==""]<-NAError: NAs are not allowed in subscripted assignments
This did not happen under R 1.9.0.
More oddly, The following commands work just fine under R 2.0.0a<-1:10 b<-letters[1:10] b[3]<-"" c<-data.frame(cbind(a,b)) c[c==""]<-NA
Why is this so?
(For atomic vectors you could also use %in% instead of ==, but this doesn't work with data frames.)
And how can I assign NA to "" data.framewise in seishin data.frame?
-- O__ ---- Peter Dalgaard Blegdamsvej 3 c/ /'_ --- Dept. of Biostatistics 2200 Cph. N (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~~~~~~~~~ - ([EMAIL PROTECTED]) FAX: (+45) 35327907
______________________________________________ [EMAIL PROTECTED] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide!
______________________________________________ [EMAIL PROTECTED] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
-- Brian D. Ripley, [EMAIL PROTECTED] Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595
______________________________________________ [EMAIL PROTECTED] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
