Danielle Navarro created ARROW-18337:
----------------------------------------
Summary: Possible undesirable handling of POSIXlt objects
Key: ARROW-18337
URL: https://issues.apache.org/jira/browse/ARROW-18337
Project: Apache Arrow
Issue Type: Improvement
Components: R
Reporter: Danielle Navarro
In the course of updating documentation, I noticed that it is possible to
create an Arrow array of POSIXlt objects from R, but not a scalar.
https://github.com/apache/arrow/pull/14514#discussion_r1016078081
This works:
{code:r}
tm <- as.POSIXlt(c(Sys.time(), Sys.time()))
arrow::Array$create(tm)
{code}
This fails:
{code:r}
arrow::Scalar$create(as.POSIXlt(Sys.time()))
{code}
It's possible to manually convert a POSIXlt object to a struct scalar like this:
{code:r}
df <- as.data.frame(unclass(as.POSIXlt(Sys.time())))
arrow::Scalar$create(df,
type = struct(
sec = float32(),
min = int32(),
hour = int32(),
mday = int32(),
mon = int32(),
year = int32(),
wday = int32(),
yday = int32(),
isdst = int32(),
zone = utf8(),
gmtoff = int32()
))
{code}
although this does not seem precisely the same as the behaviour of
Array$create() which creates an extension type?
It was unclear to us ([~thisisnic] and myself) whether the current behaviour
was desirable, so it seemed sensible to open an issue!
Related issue:
https://issues.apache.org/jira/browse/ARROW-18263
--
This message was sent by Atlassian Jira
(v8.20.10#820010)