You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by "Sascha (Jira)" <ji...@apache.org> on 2019/10/30 09:36:00 UTC

[jira] [Created] (ARROW-7028) Dates in R are different when saved and loaded with parquet

Sascha created ARROW-7028:
-----------------------------

             Summary: Dates in R are different when saved and loaded with parquet
                 Key: ARROW-7028
                 URL: https://issues.apache.org/jira/browse/ARROW-7028
             Project: Apache Arrow
          Issue Type: Bug
          Components: R
    Affects Versions: 0.15.0
            Reporter: Sascha


When saving R-dataframes with parquet and loading them again, the internal representation of Dates changes, leading e.g. to errors when comparing them in dplyr::if_else.

``` r

library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#> filter, lag
#> The following objects are masked from 'package:base':
#> 
#> intersect, setdiff, setequal, union

tmp = tempdir()
dat = tibble(tag = as.Date("2018-01-01"))
dat2 = tibble(tag2 = as.Date("2019-01-01"))

arrow::write_parquet(dat, file.path(tmp, "dat.parquet"))
dat = arrow::read_parquet(file.path(tmp, "dat.parquet"))

typeof(dat$tag)
#> [1] "integer"
typeof(dat2$tag2)
#> [1] "double"

bind_cols(dat, dat2) %>%
 mutate(comparison = if_else(TRUE, tag, tag2))
#> `false` must be a `Date` object, not a `Date` object
```

<sup>Created on 2019-10-30 by the [reprex package](https://reprex.tidyverse.org) (v0.3.0)</sup>



--
This message was sent by Atlassian Jira
(v8.3.4#803005)