datetime.date
を含むpandasDataFrame
があります。マルチレベルインデックスを設定すると、日付カラムはdatetime.datetime
オブジェクトに変換されます。これは、単一レベルインデックスの設定時には発生しません。これは正常な動作ですか? date
タイプのマルチレベルインデックスを定義するにはどうすればよいですか? =アナコンダ2.3.0 マルチレベルインデックスの日付をpandasデータフレームのdatetimeに変更する
- :
print(df_multi.index) # MultiIndex(levels=[['a'], [2015-01-01 00:00:00, 2015-01-02 00:00:00]], # labels=[[0, 0], [0, 1]], # names=['id', 'date']) print(df_single.index) # Index([2015-01-01, 2015-01-02], dtype='object', name='date')
情報については、私は次のバージョンを使用しています:ここで
が出力されます= 0.19.2import datetime import pandas as pd values = [("a", datetime.date(2015,1,1), 30.), ("a", datetime.date(2015,1,2), 25.)] columns = ["id", "date", "amount"] df = pd.DataFrame(values, columns=columns) df_single = df.set_index("date") df_multi = df.set_index(["id", "date"])
ありがとうございました!この回避策は私のためのトリックを行います。しかし、私の意見では、それはまだ予期せぬ副作用です。私は問題を開くでしょう。 – ldocao
投稿した問題は次のとおりです。https://github.com/pandas-dev/pandas/issues/15636 – ldocao