[ https://issues.apache.org/jira/browse/ARROW-8867?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Neal Richardson reassigned ARROW-8867: -------------------------------------- Assignee: Romain Francois > [R] Support converting POSIXlt type; named lists in general > ----------------------------------------------------------- > > Key: ARROW-8867 > URL: https://issues.apache.org/jira/browse/ARROW-8867 > Project: Apache Arrow > Issue Type: New Feature > Components: R > Reporter: Neal Richardson > Assignee: Romain Francois > Priority: Major > Fix For: 1.0.0 > > > {code:r} > f <- as.POSIXlt(Sys.time() + 1:5) > Array$create(f) > # Error in Array__from_vector(x, type) : > # Unknown: List vector expecting elements vector of type double but got > int32 > {code} > Issue #1: POSIXlt type is a struct, essentially. But because it is not a > data.frame, we don't try to convert it to a struct. (We should probably > convert named lists to structs and not list type in general.) > If I trick the converter into thinking it is a data.frame, it will convert to > struct successfully. > {code:r} > class(f) <- c(class(f), "data.frame") > Array$create(f) > # StructArray > # <struct<sec: double, min: int32, hour: int32, mday: int32, mon: int32, > year: int32, wday: int32, yday: int32, isdst: int32, zone: string, gmtoff: > int32>> > # ... > {code} > Issue #2: round trip won't work because the attributes that tell you that > this struct is a POSIXlt type, what time zone it is, etc., are dropped. This > would be helped by storing those attributes as custom_metadata on the Table. > (We could also implement it as an extension type, but if it's just for going > back and forth between R, would that have any benefit?) -- This message was sent by Atlassian Jira (v8.3.4#803005)