1
私は、オペランドが空のDataFrameであるdatetime型を含むDataFrameにisin
を実行すると、エポックのdatetime値)、 'False'の代わりに。これは正しいとは思わないでしょうか?空のデータフレームを持つPandas isinがbooleanの代わりにdatetime型のエポック値を生成する
次のコードは、このことを示しています
(パンダ= 0.19.2時点、numpyの= 1.12.0)
import pandas as pd
data = {'date': ['2014-05-01 18:47:05.069722', '2014-05-01 18:47:05.119994', '2014-05-02 18:47:05.178768']}
data2 = {'date': ['2014-05-01 18:47:05.069722', '2014-05-01 18:47:05.119994']}
df = pd.DataFrame(data, columns = ['date'])
df['date'] = pd.to_datetime(df['date'])
df2 = pd.DataFrame(data2, columns = ['date'])
df2['date'] = pd.to_datetime(df2['date'])
df3 = pd.DataFrame([], columns = ['date'])
df4 = pd.DataFrame()
print df.isin(df2)
print df.isin(df3)
print df.isin(df4)
この出力:
date
0 True
1 True
2 False
date
0 1970-01-01
1 1970-01-01
2 1970-01-01
date
0 1970-01-01
1 1970-01-01
2 1970-01-01
私は通常、リストを期待します'1970-01-01'の代わりにFalse値を使用しますか?私はパンダ= 0.16.2とnumpyの= 1.9.2で、df.isin(df3)
がより期待作り出すことに気づく:
date
0 False
1 False
2 False
しかしdf.isin(df4)
は、前のようです。
これは私のバグのようです。私はhttps://github.com/pandas-dev/pandasのパンダ開発者に報告します – languitar