Skip to content

BUG: inferred Timestamp unit with dateutil paths #55737

@jbrockmendel

Description

@jbrockmendel
>>> pd.Timestamp("10/27/23 14:19:01.000").unit 's' >>> pd.Timestamp("01-01-2013T00:00:00.000000000+0000").unit 's'

In dateutil_parse we have

 if reso == "microsecond": if repl["microsecond"] == 0: reso = "second" elif repl["microsecond"] % 1000 == 0: reso = "millisecond" 

which ends up ignoring the trailing zeros. We end up with an incorrectly low-resolution unit.

Surfaced while implementing #55564.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugNeeds TriageIssue that has not been reviewed by a pandas team member

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions