BUG: tz-aware datetime with column-wise comparisions failing with np.minmum/maximum
See original GitHub issueCode Sample, a copy-pastable example if possible
>>> import numpy as np
>>> import pandas as pd
>>> naive = pd.to_datetime(['now'])
>>> utc = naive.tz_localize('UTC')
>>> np.minimum(naive, naive)
>>> np.minimum(utc, utc)
>>> np.minimum(pd.Series(naive), pd.Series(naive))
>>> np.minimum(pd.Series(utc), pd.Series(utc))
File "bug.py", line 10, in <module>
np.minimum(pd.Series(utc), pd.Series(utc))
File "~/anaconda3/lib/python3.5/site-packages/pandas/core/series.py", line 498, in __array_prepare__
op=context[0].__name__))
TypeError: Series with dtype datetime64[ns, UTC] cannot perform the numpy op minimum
Problem description
When a tz-aware datetime is placed in a Series
, the numpy operations fmin
/fmax
/minimum
/maximum
throw an error, even though these operations work fine on a tz-aware DatetimeIndex
.
Output of pd.show_versions()
INSTALLED VERSIONS
commit: None python: 3.5.2.final.0 python-bits: 64 OS: Linux OS-release: 4.9.8-100.fc24.x86_64 machine: x86_64 processor: x86_64 byteorder: little LC_ALL: C LANG: C LOCALE: None.None
pandas: 0.19.2 nose: 1.3.7 pip: 9.0.1 setuptools: 27.2.0 Cython: 0.25.2 numpy: 1.11.3 scipy: 0.18.1 statsmodels: 0.8.0 xarray: 0.9.1 IPython: 4.2.0 sphinx: 1.5.1 patsy: 0.4.1 dateutil: 2.6.0 pytz: 2016.10 blosc: None bottleneck: 1.2.0 tables: 3.3.0 numexpr: 2.6.2 matplotlib: 2.0.0 openpyxl: 2.4.1 xlrd: 1.0.0 xlwt: 1.2.0 xlsxwriter: 0.9.6 lxml: 3.7.2 bs4: 4.5.3 html5lib: 0.999 httplib2: None apiclient: None sqlalchemy: 1.1.5 pymysql: None psycopg2: None jinja2: 2.9.4 boto: 2.45.0 pandas_datareader: None
Issue Analytics
- State:
- Created 7 years ago
- Comments:5 (5 by maintainers)
Top GitHub Comments
and @adbull
this is not true at all, they naively look like they are working, but because of the same issue above (numpy has no clue about timezones, and forget about missing values), these are completely wrong (they are tz shifted incorrectly)
This looks fixed on master again: