[
https://issues.apache.org/jira/browse/ARROW-15659?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17490896#comment-17490896
]
Dragoș Moldovan-Grünfeld commented on ARROW-15659:
--------------------------------------------------
This would also allow us to use {{coalesce()}} downstream to cycle through
several formats, for example, when defining {{{}parse_date_time(){}}}.
> [R] strptime should return NA (not error) with format mismatch
> ---------------------------------------------------------------
>
> Key: ARROW-15659
> URL: https://issues.apache.org/jira/browse/ARROW-15659
> Project: Apache Arrow
> Issue Type: Bug
> Components: R
> Reporter: Dragoș Moldovan-Grünfeld
> Assignee: Dragoș Moldovan-Grünfeld
> Priority: Major
>
> {{base::strptime()}} returns {{NA}} when the value passed to the {{format}}
> argument does not match the string to be parsed. The arrow binding currently
> errors in the same scenario.
> {code:r}
> strptime("2022-02-11", format = "%Y-%m-%d")
> #> [1] "2022-02-11 GMT"
> strptime("2022-02-11", format = "%Y %m-%d")
> #> [1] NA
> {code}
> {code:r}
> suppressMessages(library(lubridate))
> suppressMessages(library(arrow))
> suppressMessages(library(dplyr))
> df <- tibble(x = "2022-02-11")
> df %>%
> mutate(z = strptime(x, format = "%Y-%m %d"))
> #> # A tibble: 1 × 2
> #> x z
> #> <chr> <dttm>
> #> 1 2022-02-11 NA
> df %>%
> record_batch() %>%
> mutate(z = strptime(x, format = "%Y-%m %d")) %>%
> collect()
> #> Error: Invalid: Failed to parse string: '2022-02-11' as a scalar of type
> timestamp[ms]
> {code}
--
This message was sent by Atlassian Jira
(v8.20.1#820001)