gpt4 book ai didi

python - Pandas :删除重复日期但保留最后一个

转载 作者:太空宇宙 更新时间:2023-11-04 01:56:01 24 4
gpt4 key购买 nike

(不是重复的问题)

我有以下数据集:

GMT TIME, Value
2018-01-01 00:00:00, 1.2030
2018-01-01 00:01:00, 1.2000
2018-01-01 00:02:00, 1.2030
2018-01-01 00:03:00, 1.2030
.... , ....
2018-12-31 23:59:59, 1.2030

我正在尝试找到一种方法来删除以下内容:

  • hh:mm:ss 形成日期时间
  • 删除 time (hh:mm:ss) 部分后,我们将有重复的 date 条目,例如多个 2018-01-01等等......所以我需要删除重复的日期数据,只保留最后一个日期,在下一个日期之前,例如 2018-01-02 同样保留最后一个 2018- 01-02 在下一个日期 2018-01-03 之前重复...

我如何用 Pandas 做到这一点?

最佳答案

假设您有数据:

              GMT TIME  Value
0 2018-01-01 00:00:00 1.203
1 2018-01-01 00:01:00 1.200
2 2018-01-01 00:02:00 1.203
3 2018-01-01 00:03:00 1.203
4 2018-01-02 00:03:00 1.203
5 2018-01-03 00:03:00 1.203
6 2018-01-04 00:03:00 1.203
7 2018-12-31 23:59:59 1.203

pandas.to_datetime.dt.datepandas.DataFrame.groupby 一起使用:

import pandas as pd

df['GMT TIME'] = pd.to_datetime(df['GMT TIME']).dt.date
df.groupby(df['GMT TIME']).last()

输出:

            Value
GMT TIME
2018-01-01 1.203
2018-01-02 1.203
2018-01-03 1.203
2018-01-04 1.203
2018-12-31 1.203

或者使用pandas.DataFrame.drop_duplicates:

df['GMT TIME'] = pd.to_datetime(df['GMT TIME']).dt.date
df.drop_duplicates('GMT TIME', 'last')

输出:

     GMT TIME  Value
3 2018-01-01 1.203
4 2018-01-02 1.203
5 2018-01-03 1.203
6 2018-01-04 1.203
7 2018-12-31 1.203

关于python - Pandas :删除重复日期但保留最后一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56800219/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com