def wrapper(self, other): self, other = _align_method_SERIES(self, other, align_asobject=True) res_name = get_op_result_name(self, other) lvalues = extract_array(self, extract_numpy=True) rvalues = extract_array(other, extract_numpy=True) res_values = logical_op(lvalues, rvalues, op) return self._construct_result(res_values, name=res_name)
def wrapper(self, other): self, other = _align_method_SERIES(self, other, align_asobject=True) res_name = get_op_result_name(self, other) if isinstance(other, ABCDataFrame): # Defer to DataFrame implementation; fail early return NotImplemented lvalues = extract_array(self, extract_numpy=True) rvalues = extract_array(other, extract_numpy=True) res_values = logical_op(lvalues, rvalues, op) return _construct_result(self, res_values, index=self.index, name=res_name)
def wrapper(self, other): self, other = _align_method_SERIES(self, other, align_asobject=True) res_name = get_op_result_name(self, other) # TODO: shouldn't we be applying finalize whenever # not isinstance(other, ABCSeries)? finalizer = (lambda x: x.__finalize__(self) if not isinstance(other, (ABCSeries, ABCIndexClass)) else x) if isinstance(other, ABCDataFrame): # Defer to DataFrame implementation; fail early return NotImplemented lvalues = extract_array(self, extract_numpy=True) rvalues = extract_array(other, extract_numpy=True) res_values = logical_op(lvalues, rvalues, op) result = self._constructor(res_values, index=self.index, name=res_name) return finalizer(result)