(data, func, args, kwargs, decorator, axis)
| 26 | return data.map(func, na_action="ignore" if skip_na else None, **kwargs_to_pass) |
| 27 | |
| 28 | def apply(data, func, args, kwargs, decorator, axis): |
| 29 | if isinstance(data, Series): |
| 30 | return data.apply(func, convert_dtype=True, args=args, by_row=False) |
| 31 | elif isinstance(data, DataFrame): |
| 32 | return data.apply( |
| 33 | func, |
| 34 | axis=axis, |
| 35 | raw=False, |
| 36 | result_type=None, |
| 37 | args=args, |
| 38 | by_row="compat", |
| 39 | **kwargs, |
| 40 | ) |
| 41 | else: |
| 42 | assert isinstance(data, np.ndarray) |
| 43 | |
| 44 | def wrap_function(func): |
| 45 | # https://github.com/numpy/numpy/issues/8352 |
| 46 | def wrapper(*args, **kwargs): |
| 47 | result = func(*args, **kwargs) |
| 48 | if isinstance(result, str): |
| 49 | result = np.array(result, dtype=object) |
| 50 | return result |
| 51 | |
| 52 | return wrapper |
| 53 | |
| 54 | return np.apply_along_axis(wrap_function(func), axis, data, *args, **kwargs) |
| 55 | |
| 56 | |
| 57 | class MockEngineDecorator: |
no outgoing calls
no test coverage detected