R - apply on dataframe: how to avoid implicit character conversion
When using apply on a data.frame, the arguments are (implicitly) converted
to character. An example:
df <- data.frame(v=1:10, t=1:10)
df <- transform(df, t2 = as.POSIXlt(t, origin = "2013-08-13"))
class(df$t2[1])
## [1] "POSIXct" "POSIXt" (correct)
but:
apply(df, 1, function(y) class(y["t2"]))
## [1] "character" "character" "character" "character" "character"
"character"
## [7] "character" "character" "character" "character"
Is there any way to avoid this conversion? Or do I always have to convert
back through as.POSIXlt(y["t2"]) ?
No comments:
Post a Comment