Skip to content

Commit fa22aef

Browse files
jbrockmendelrhshadrach
authored andcommitted
REF: re-use _maybe_promote for _is_convertible_to_index_for_join (pandas-dev#36416)
1 parent 407dea1 commit fa22aef

File tree

1 file changed

+5
-24
lines changed

1 file changed

+5
-24
lines changed

pandas/core/indexes/datetimelike.py

+5-24
Original file line numberDiff line numberDiff line change
@@ -848,11 +848,11 @@ def join(
848848
"""
849849
See Index.join
850850
"""
851-
if self._is_convertible_to_index_for_join(other):
852-
try:
853-
other = type(self)(other)
854-
except (TypeError, ValueError):
855-
pass
851+
pself, pother = self._maybe_promote(other)
852+
if pself is not self or pother is not other:
853+
return pself.join(
854+
pother, how=how, level=level, return_indexers=return_indexers, sort=sort
855+
)
856856

857857
this, other = self._maybe_utc_convert(other)
858858
return Index.join(
@@ -881,25 +881,6 @@ def _maybe_utc_convert(self, other):
881881
other = other.tz_convert("UTC")
882882
return this, other
883883

884-
@classmethod
885-
def _is_convertible_to_index_for_join(cls, other: Index) -> bool:
886-
"""
887-
return a boolean whether I can attempt conversion to a
888-
DatetimeIndex/TimedeltaIndex
889-
"""
890-
if isinstance(other, cls):
891-
return False
892-
elif len(other) > 0 and other.inferred_type not in (
893-
"floating",
894-
"mixed-integer",
895-
"integer",
896-
"integer-na",
897-
"mixed-integer-float",
898-
"mixed",
899-
):
900-
return True
901-
return False
902-
903884
# --------------------------------------------------------------------
904885
# List-Like Methods
905886

0 commit comments

Comments
 (0)