0
datetimeをメインインデックスとして使用しますが、そこに重複がたくさんあります。私が望むのは、秒の各グループ内に "カウンタ"として機能する人工的なミリ秒を追加することです。例えばミリ秒を追加してtimeindexを重複除外します
- のように、元のデータフレームが見えます:私は使用することができることを、私はGROUPBY機能を再生しようとした
2016-06-28 13:00:10
2016-06-28 13:00:10.001000
2016-06-28 13:00:10.002000
2016-06-28 13:00:10.003000
2016-06-28 13:00:10.004000
2016-06-28 13:00:10.005000
2016-06-28 13:00:10.006000
:私の目標はにduplicit行を変更することです
Bid BidVol
2016-06-27 13:00:10 4183.50 0
2016-06-27 13:00:10 4183.50 0
2016-06-27 13:00:10 4183.50 0
2016-06-28 13:00:10 4249.25 1
2016-06-28 13:00:10 4249.25 1
2016-06-28 13:00:10 4249.00 1
2016-06-28 13:00:10 4248.75 1
2016-06-28 13:00:10 4248.75 2
2016-06-28 13:00:10 4248.75 1
2016-06-28 13:00:10 4248.75 2
2016-06-28 13:00:12 4248.50 0
2016-06-28 13:00:12 4248.50 0
2016-06-29 13:00:12 4353.75 0
2016-06-29 13:00:12 4353.75 0
2016-06-29 13:00:12 4353.75 0
2016-06-29 13:00:12 4354.00 1
2016-06-29 13:00:12 4354.00 1
2016-06-29 13:00:12 4353.75 0
2016-06-29 13:00:12 4354.00 1
2016-06-29 13:00:12 4354.00 1
2016-06-29 13:00:12 4354.00 1
2016-06-29 13:00:12 4354.00 1
2016-06-30 13:00:10 4394.00 0
2016-06-30 13:00:11 4394.25 1
2016-06-30 13:00:11 4394.00 0
ループでミリ秒を印刷します。
for name, group in test.groupby(test.index):
print ('------')
i=0
for idx, values in group.iterrows():
print (idx+pd.Timedelta(milliseconds=i))
i+=1
ただし、インデックスを変更する方法はわかりません。私が必要とする結果を得る最も効果的な方法は?特に効率性を重視しています(主なデータセットは非常に大きい)。