Skip to content

[C++] Support DST-aware timestamp + interval addition #47400

@icexelloss

Description

@icexelloss

Describe the enhancement requested

In Pandas, there is a way to do "day offset shift" that is day light saving aware, e.g.

import pyarrow as pa
import pandas as pd
import pyarrow.compute as pc

begin = pd.Timestamp('20250308 9:30', tz='America/New_York')
print(begin)
print(begin + pd.DateOffset(days=1))
print(begin + pd.DateOffset(days=2))

Outputs:

2025-03-08 09:30:00-05:00
2025-03-09 09:30:00-04:00
2025-03-10 09:30:00-04:00

However, there is no way to do such operations as far as I am aware with arrow compute, the closest I found is this

begin = pa.scalar(pd.Timestamp('20250309', tz='America/New_York'))
pc.add(begin, pa.scalar((0, 1, 0), type=pa.month_day_nano_interval()))

However, it seems not supported, I also didn't find any specific arrow compute function to do this.

IMO this would be really useful to deal with time in non-UTC timezone.

Component(s)

C++

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions