-
Notifications
You must be signed in to change notification settings - Fork 4k
Description
I was trying to aggregate over time using different granularity. Usually I would use the lubridate::floor_date() , which is currently not supported for parquet datasets.
Is there any comprehensive list of supported list of currently supported {}lubridate (or dplyr{}) verbs? Maybe, it’s only my fault, but except the changelog I haven’t find any relevant information.
Later I found that the round_temporal() function is exposed to {}R{}.
But I am struggling to find the right syntax inside a mutate statement to apply on a timestamp[us, tz=UTC] type column.
new_dataset |>
mutate(time = arrow_round_temporal(time))
#> Error: Invalid: Attempted to initialize KernelState from null FunctionOptions
Here are some other attempts:
library(arrow)
arrow_now <- Scalar$create(lubridate::now())
(arrow_now)
#> Scalar
#> 2022-04-25 11:44:33.805609
call_function("round_temporal", arrow_now)
#> Scalar
#> 2022-04-25 00:00:00.000000
call_function("round_temporal", arrow_now, unit = "day")
#> Error: Argument 2 is of class character but it must be one of "Array", "ChunkedArray", "RecordBatch", "Table", or "Scalar"
arrow_unit <- Scalar$create("day")
(arrow_unit)
#> Scalar
#> day
call_function("round_temporal", arrow_now, unit = arrow_unit)
#> Error: Invalid: Function 'round_temporal' accepts 1 arguments but attempted to look up kernel(s) with 2
Reporter: Zsolt Kegyes-Brassai / @kbzsl
Watchers: Rok Mihevc / @rok
Related issues:
- [R] Implement bindings for lubridate's floor_date, ceiling_date, and round_date (duplicates)
- [R] [Docs] Document the lubridate functions we support in {arrow} (relates to)
- [R] Implement bindings for lubridate's floor_date, ceiling_date, and round_date (is related to)
Note: This issue was originally created as ARROW-16316. Please see the migration documentation for further details.