Dear Micheal, Thank you. So to make a zoo which has factors in into a numeric,we have to go from factor to character to numeric. The coredata goes fine from factor to character. In the numeric conversion we need a new zoo object.
Best, Ashim On Tue, Sep 27, 2011 at 4:21 PM, R. Michael Weylandt < michael.weyla...@gmail.com> wrote: > It's just a guess from playing around with a few things. The author of the > package is on this list and he could both confirm that I'm right and say why > exactly it is implemented like this. > > My hunch is that it ultimately comes from the fact that > > coredata(z) != z > > Consider this: > > x = letters[1:5] > x2 <- x1 <- x > > mode(x) > > x1[1:5] <- 1:5 # Modify the values of x1 without changing the mode > print(x1) > > x2 <- 1:5 # Replace x2 > print(x2) > > Michael Weylandt > > > On Tue, Sep 27, 2011 at 6:41 AM, Ashim Kapoor <ashimkap...@gmail.com>wrote: > >> Dear Michael, >> >> I don't think this is mentioned in the zoo FAQ. May I ask where you read >> this? Some references ? >> >> Thank you for your help, >> Ashim >> >> >> On Tue, Sep 27, 2011 at 4:06 PM, R. Michael Weylandt < >> michael.weyla...@gmail.com> wrote: >> >>> Yes, once made into a character zoo, the core data is marked to be of >>> mode "character" and most attempts to modify involve implicit coercion to >>> that mode. >>> >>> The following however works: >>> >>> library(zoo) >>> >>> z <- zoo(1:4, order.by=1:4) >>> str(z) >>> >>> z.Str <- z >>> coredata(z.Str) <- as.character(coredata(z)) >>> str(z.Str) >>> >>> z.Num <- z.Str >>> mode(z.Num) <- "numeric" >>> str(z.Num) >>> >>> However, I prefer to use this sort of line of code: >>> >>> z.Num <- zoo(as.double(z.Str), index(z.Str)) >>> >>> finding it a little more transparent. >>> >>> Hope this helps, >>> Michael Weylandt >>> >>> On Tue, Sep 27, 2011 at 5:56 AM, Ashim Kapoor <ashimkap...@gmail.com>wrote: >>> >>>> Dear R-helpers, >>>> >>>> It seems to me that a character zoo cannot be coerced to a numeric zoo. >>>> Below is a minimal example. Can someone tell me what I have done wrong? >>>> >>>> > z<-zoo(1:4,order.by=1:4) >>>> > coredata(z)<-as.character(coredata(z)) >>>> > str(z) >>>> zoo series from 1 to 4 >>>> Data: chr [1:4] "1" "2" "3" "4" >>>> Index: int [1:4] 1 2 3 4 >>>> > coredata(z)<-as.numeric(coredata(z)) >>>> > str(z) >>>> zoo series from 1 to 4 >>>> Data: chr [1:4] "1" "2" "3" "4" >>>> Index: int [1:4] 1 2 3 4 >>>> >>>> >>>> Many thanks, >>>> Ashim >>>> >>>> [[alternative HTML version deleted]] >>>> >>>> >>>> ______________________________________________ >>>> 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. >>>> >>>> >>> >> > [[alternative HTML version deleted]]
______________________________________________ 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.