diff options
author | Bas van Beek <43369155+BvB93@users.noreply.github.com> | 2021-09-04 15:55:09 +0200 |
---|---|---|
committer | Bas van Beek <43369155+BvB93@users.noreply.github.com> | 2021-09-04 15:55:09 +0200 |
commit | a0ea053cd7ee8af1bd05a49b9577eb13fa1e28b7 (patch) | |
tree | 076ab090d3f350056e2b415b69294536bdcb80fe | |
parent | 9ef778330a625ccff12b6fa913e1b6306e02eb78 (diff) | |
download | numpy-a0ea053cd7ee8af1bd05a49b9577eb13fa1e28b7.tar.gz |
MAINT: Copy the `_methods._std` code-path for handling `nanstd` object-arrays
https://github.com/numpy/numpy/blob/410a89ef04a2d3c50dd2dba2ad403c872c3745ac/numpy/core/_methods.py#L265-L270
-rw-r--r-- | numpy/lib/nanfunctions.py | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/numpy/lib/nanfunctions.py b/numpy/lib/nanfunctions.py index 65e1ca936..46c71e1f5 100644 --- a/numpy/lib/nanfunctions.py +++ b/numpy/lib/nanfunctions.py @@ -1683,11 +1683,8 @@ def nanstd(a, axis=None, dtype=None, out=None, ddof=0, keepdims=np._NoValue): keepdims=keepdims) if isinstance(var, np.ndarray): std = np.sqrt(var, out=var) + elif hasattr(var, 'dtype'): + std = var.dtype.type(np.sqrt(var)) else: - # Precaution against reduced object arrays - try: - std = var.dtype.type(np.sqrt(var)) - except AttributeError: - cls = type(var) - std = cls(np.sqrt(var)) + std = np.sqrt(var) return std |