当前位置: 首页 > 知识库问答 >
问题:

Python按两列分组,然后得到最早和最晚的日期

钮善
2023-03-14

当我试图获取groupby之后的最早和最晚日期时,我发现max结果将附在min之后:

ATR_table.groupby(['USAGEID', 'STAT']).agg({'DATADTTM':'min','DATADTTM':'max'})

有没有一种方法可以通过使用GroupBy得到以下结果?

共有1个答案

嵇俊德
2023-03-14

如果没有其他列,可以简单地传递一个普通列表:

ATR_table.groupby(['USAGEID', 'STAT']).agg(['min', 'max'])

如果您希望能够在其他列上使用其他函数,您应该在字典中包括一个列表:

ATR_table.groupby(['USAGEID', 'STAT']).agg({'DATADTTM':['min', 'max']})
 类似资料:
  • 假设我有一个像下面这样的数据,有名称、类和日期 我正在寻找一个输出,这将给我的每个名字的值计数,他们各自的等级和最早的日期和最新的日期。我的输出是, 我能够找到每个名字的计数, 但无法在“日期”列中找到“最早日期”和“最晚日期”。 有人能帮我吗?

  • 我有一个熊猫DataFrame看起来像这样: 我的目标是能够为每个项目计算每个日期之间的价值差异。例如,我想找到A项: 12(32-20,因为最大年份是2012年,最小年份是2010年)和B项:20 (40 - 20,因为最大年份是2019年,最小年份是2016年)。 我使用以下代码获取每个项目的年最大值和年最小值: 然后,我找到每个项目的年份最小值和年份最大值。然而,我坚持做我想要的。

  • 我有一个LocalDateTime对象,我想得到这个月的最后一个日期。所以如果localDateTime指向今天的10月29日。我想把它改为10月31日 有没有干净简单的方法 我的想法: 一种方法是得到这个月,然后做一个转换声明。但这将是一个漫长而乏味的过程。不确定是否有内置的方法来做同样的事情

  • 我是java新手,我创建了两个arraylists,然后在while循环中向用户请求一个数字,一旦我从第1点和第2点获得了所需数量的数字。我将arrayllists转换为数组。我需要比较两个点阵,然后将最低点的缺失数字设置为零。例如 点1=(12,123,123,435,6756,667)//6个数字 点 2=(23,13,35)//3 个数字 点 3=(23,13,35,0,0,0)//新数组替

  • 问题内容: 我有一张税单: TaxLine类为 我想基于unique 和合并它们,然后添加预期: 问题答案: 主体与链接问题中的主体相同,只需要一个不同的下游收集器来求和:

  • 问题内容: 我知道这在这里被问了很多,而且我尝试使用其他示例并入我自己的示例,但是我似乎无法完成这项工作。 我有sku,日期和费用列,我想查看所有3列,但仅按最大日期(按sku分组)查看。目前: 需要: 这是我的SQL的样子: 这是设计视图的外观(我更是一个视觉化的人): 设计视图 这是第二周的自学,如何操作Access以及它如何工作,所以如果我们能用蜡笔画出如何正确完成此工作的方法,那就太好了。