Hello,

I noticed something odd when working with data frames and xts objects.

If I read in a CSV file, R creates a nice data.frame.  This works well.

If I then convert to an XTS object, I see that all the values in the data are now quoted.  My data is a mix of numeric and character.  This is usually seen when converting a data.frame to a matrix, as R will treat all the data as the same class. (character)

How can I ensure that R creates an XTS object that is still a data.frame so that all the data are the correct type??


In the example below, you can see how as.xts() creates an object with the correct date and time index.  Please notice how all the values are now quoted indicating that R considers them a string.

thee data read in "d" is a data.frame:
> str(d)
'data.frame':	248 obs. of  4 variables:

However, converting to an XTS seems to break that.
Example:

=============================================
d <- (read.csv(file.path(dataDir,thisFile), as.is=T)) 
myXTS <- as.xts( d, order.by=as.POSIXct(strptime(paste(d$Date, d$Time), '%m/%d/%y %H:%M'))) 

head(d)
  Date         Obsever    Val.1        Time
1 10/12/09      PL        15           12:44
2 10/12/09      PL        15           12:44

head(myXTS)
                    Date       Obsever Val.1      Time
2009-10-12 12:44:00 "10/12/09" "PL"    "15"      "12:44"        
2009-10-12 12:44:00 "10/12/09" "PL"    "15"      "12:44"  
=============================================


--
Noah Silverman
UCLA Department of Statistics
8208 Math Sciences Building
Los Angeles, CA 90095


	[[alternative HTML version deleted]]

