按数据框进行分组和排序,然后根据条件找到第一个匹配项

麦克洛里

我有以下DataFrame,当第一个日期(升序)执行标志列= Y时,我试图为每个客户查找

df = {
  "customer_key": ["1","1","1","2","2","2"],
  "date": ["2020-09-30", "2020-01-31", "2020-06-30","2020-01-31", "2020-02-29", "2020-03-31"],
  "flag": ["Y","N","Y","N","N","Y"]
}

预期结果:

  • 对于客户1,时间为2020-06-30。
  • 对于客户2,时间为2020-03-31。

首先,我要按日期排序。

df.sort_values('date', inplace=True)

这是我被卡住的地方,我知道我需要按客户密钥分组,然后在flag = y处找到第一个匹配项,我现在确定如何以Python方式进行此操作。

df['first_occurence_date'] = df.groupby(by='customer_key') ## i dunno...
贝尼

试试看

out = df.loc[df['flag'].eq('Y')].groupby('customer_key').date.min()
customer_key
1    2020-06-30
2    2020-03-31
Name: date, dtype: object

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何根据数组(和找到的节点)中的第一个匹配项查询第一个节点?

来自分类Dev

找到第一个单词和最后一个单词的匹配项

来自分类Dev

如何按linq查询对组中的元素进行排序,然后选择第一个?

来自分类Dev

按值对json进行排序,然后提取第一个值

来自分类Dev

按元组的第3个元素排序,然后按第一个元素分组并分配等级

来自分类Dev

如何找到数组之间的第一个匹配项并对其进行格式化

来自分类Dev

根据条件(Java / Guava)从列表中提取第一个匹配项?

来自分类Dev

按熊猫数据框唯一的第一个值分组 - 返回 numpy 数组

来自分类Dev

查找用户选择的第一个唯一项,然后按用户选择的日期对它们进行排序

来自分类Dev

在Multiindex数据框中查找每个索引的第一个匹配项

来自分类Dev

合并熊猫数据框时如何仅使用第一个匹配项?

来自分类Dev

选择数据框中带有前缀的变量的第一个匹配项

来自分类Dev

使用spark数据框分组时获得条件的列的第一个值

来自分类Dev

根据字符串中的第一个字符,找到字符串列表中元素的第一个匹配项

来自分类Dev

根据字符串中的第一个字符,找到字符串列表中元素的第一个匹配项

来自分类Dev

SQL查询按2列分组并采用第3列的第一个匹配项

来自分类Dev

扩展grep以在第一个匹配项之后找到匹配项

来自分类Dev

如果第一个匹配项没有行,如何进行条件连接,请使用第二个匹配项

来自分类Dev

如何找到第一个特定项目,然后进行3个后续项目?

来自分类Dev

在C中按对的第一个元素然后按对的第二个元素对对的向量进行排序

来自分类Dev

使用“ sed”仅替换第一个和最后一个匹配项

来自分类Dev

根据两个键进行排序,第一个按降序排列,第二个按升序排列

来自分类Dev

如何从多个条件中找到与第一个条件相匹配的值

来自分类Dev

每当找到类中的第一个匹配项时,如何停止方法.contains()?

来自分类Dev

如何使此正则表达式仅找到第一个匹配项

来自分类Dev

根据第一个匹配的字符进行连续的超前匹配

来自分类Dev

Linq:按日期排序并找到第一个元素

来自分类Dev

按字段值返回第一个匹配项的数组

来自分类Dev

根据条件打印数据帧的第一个值,然后迭代到下一个序列

Related 相关文章

  1. 1

    如何根据数组(和找到的节点)中的第一个匹配项查询第一个节点?

  2. 2

    找到第一个单词和最后一个单词的匹配项

  3. 3

    如何按linq查询对组中的元素进行排序,然后选择第一个?

  4. 4

    按值对json进行排序,然后提取第一个值

  5. 5

    按元组的第3个元素排序,然后按第一个元素分组并分配等级

  6. 6

    如何找到数组之间的第一个匹配项并对其进行格式化

  7. 7

    根据条件(Java / Guava)从列表中提取第一个匹配项?

  8. 8

    按熊猫数据框唯一的第一个值分组 - 返回 numpy 数组

  9. 9

    查找用户选择的第一个唯一项,然后按用户选择的日期对它们进行排序

  10. 10

    在Multiindex数据框中查找每个索引的第一个匹配项

  11. 11

    合并熊猫数据框时如何仅使用第一个匹配项?

  12. 12

    选择数据框中带有前缀的变量的第一个匹配项

  13. 13

    使用spark数据框分组时获得条件的列的第一个值

  14. 14

    根据字符串中的第一个字符,找到字符串列表中元素的第一个匹配项

  15. 15

    根据字符串中的第一个字符,找到字符串列表中元素的第一个匹配项

  16. 16

    SQL查询按2列分组并采用第3列的第一个匹配项

  17. 17

    扩展grep以在第一个匹配项之后找到匹配项

  18. 18

    如果第一个匹配项没有行,如何进行条件连接,请使用第二个匹配项

  19. 19

    如何找到第一个特定项目,然后进行3个后续项目?

  20. 20

    在C中按对的第一个元素然后按对的第二个元素对对的向量进行排序

  21. 21

    使用“ sed”仅替换第一个和最后一个匹配项

  22. 22

    根据两个键进行排序,第一个按降序排列,第二个按升序排列

  23. 23

    如何从多个条件中找到与第一个条件相匹配的值

  24. 24

    每当找到类中的第一个匹配项时,如何停止方法.contains()?

  25. 25

    如何使此正则表达式仅找到第一个匹配项

  26. 26

    根据第一个匹配的字符进行连续的超前匹配

  27. 27

    Linq:按日期排序并找到第一个元素

  28. 28

    按字段值返回第一个匹配项的数组

  29. 29

    根据条件打印数据帧的第一个值,然后迭代到下一个序列

热门标签

归档