排序数据并应用groupby

时间:2017-07-05 19:52:57

标签: python sorting pandas timedelta pandas-groupby

我有一个数据框(df),其中包含两行,每个'name'有多个条目:

                     name                           date
       Official Press FRC        2015-02-19 20:30:00.000
   Other Publications BOJ        2015-04-16 07:00:00.000
           Bank of Russia        2015-06-11 09:44:37.000

我想找到每个'名字'的'日期'的最大差异。我的方法是尝试对日期进行排序,同时按名称分组,然后使用.diff()获取差异。以下是我尝试的代码:

grouped = df.sort_values('date').groupby('name')
differences = grouped.diff()

我还尝试通过构建数据透视表来解决问题:

grouped = df.pivot(columns='name', values='date')

1 个答案:

答案 0 :(得分:1)

我认为您需要使用max#if necessary convert to datetime df['date'] = pd.to_datetime(df['date']) df1 = df.sort_values('date') .groupby('name')['date'].apply(lambda x: x.diff().max()) .reset_index(name='max_diff') 的自定义函数来获取最大时间值:

csv