Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
PERF: _return_parsed_timezone_results
  • Loading branch information
lukemanley committed Dec 10, 2022
commit 45f65bc65798629cc7c35e4866a3913f911585a1
24 changes: 11 additions & 13 deletions pandas/core/tools/datetimes.py
Original file line number Diff line number Diff line change
Expand Up @@ -313,19 +313,17 @@ def _return_parsed_timezone_results(
-------
tz_result : Index-like of parsed dates with timezone
"""
tz_results = np.array(
[Timestamp(res).tz_localize(zone) for res, zone in zip(result, timezones)]
)
if utc:
# Convert to the same tz
tz_results = np.array(
[
tz_result.tz_convert("utc")
if tz_result.tzinfo is not None
else tz_result.tz_localize("utc")
for tz_result in tz_results
]
)
dta = DatetimeArray(result)
tz_results = np.empty(len(dta), dtype=object)
for zone in unique(timezones):
mask = timezones == zone
dta = DatetimeArray(result[mask]).tz_localize(zone)
if utc:
if dta.tzinfo is None:
dta = dta.tz_localize("utc")
else:
dta = dta.tz_convert("utc")
tz_results[mask] = dta

return Index(tz_results, name=name)

Expand Down