diff --git a/pandas/core/ops/__init__.py b/pandas/core/ops/__init__.py index cc2d4ced1243f..9fd6efe32de29 100644 --- a/pandas/core/ops/__init__.py +++ b/pandas/core/ops/__init__.py @@ -829,6 +829,13 @@ def wrapper(self, other): # Defer to DataFrame implementation; fail early return NotImplemented + elif should_extension_dispatch(self, other): + lvalues = extract_array(self, extract_numpy=True) + rvalues = extract_array(other, extract_numpy=True) + res_values = dispatch_to_extension_op(op, lvalues, rvalues) + result = self._constructor(res_values, index=self.index, name=res_name) + return finalizer(result) + elif isinstance(other, (ABCSeries, ABCIndexClass)): is_other_int_dtype = is_integer_dtype(other.dtype) other = other if is_other_int_dtype else fill_bool(other)