に基づいて重複:私は今、やりたい何パンダデータフレーム:私はこのようになります(非常にここでsimplyfied)パンダのデータフレーム持っている列と時間帯
df
datetime user type msg
0 2012-11-11 15:41:08 u1 txt hello world
1 2012-11-11 15:41:11 u2 txt hello world
2 2012-11-21 17:00:08 u3 txt hello world
3 2012-11-22 18:08:35 u4 txt hello you
4 2012-11-22 18:08:37 u5 txt hello you
を取得することですすべてタイムスタンプが3秒以内のメッセージが重複しています。所望の出力は次のようになります第三の行せず
datetime user type msg
0 2012-11-11 15:41:08 u1 txt hello world
1 2012-11-11 15:41:11 u2 txt hello world
3 2012-11-22 18:08:35 u4 txt hello you
4 2012-11-22 18:08:37 u5 txt hello you
、そのテキストが行1および2と同様であるが、そのタイムスタンプが3秒の範囲内 ないからです。
Iはduplicate()
メソッドのパラメータとしてカラム日時とMSGを定義しようとしたが、タイムスタンプが一致しないので、空のデータフレームを返す:
mask = df.duplicated(subset=['datetime', 'msg'], keep=False)
print(df[mask])
Empty DataFrame
Columns: [datetime, user, type, msg, MD5]
Index: []
私は範囲を定義することができる方法はあります私の "datetime"パラメータのために?説明するために、のようなもの :
mask = df.duplicated(subset=['datetime_between_3_seconds', 'msg'], keep=False)
ここにすべてのヘルプは、いつものように非常に高く評価されるだろう。
あなたの助けてくれてありがとう、Tkanno!あなたの提案も役に立ちました! – dliv