根据 groupby 值向 Pandas 数据框添加一个新列

宾亚明连

我有一个数据框:

  date                value
1/1/2017               -3
1/1/2017               -1 
1/1/2017                5 
1/2/2017                4
1/2/2017                9
1/2/2017               -1

我想要做的是添加一个额外的列,如果该日期的值最小,则该is_min将得到1,否则0

所以结果应该是:

 date                 value            is_min
1/1/2017               -3                1
1/1/2017               -1                0 
1/1/2017                5                0 
1/2/2017                4                0
1/2/2017                9                0 
1/2/2017               -1                1

我试过这样的事情

df['is_min']=df['value']==df.groupby('date')['value'].min()

但是,当然,长度df['value']df.groupby('date')['value'].min()不匹配......

耶斯列

您可以用于DataFrameGroupBy.idxmin在 中查找最小索引group,然后通过isin以下方式测试成员资格

df['is_min'] = df.index.isin(df.groupby('date')['value'].idxmin()).astype(int)
print (df)
       date  value  is_min
0  1/1/2017     -3       1
1  1/1/2017     -1       0
2  1/1/2017      5       0
3  1/2/2017      4       0
4  1/2/2017      9       0
5  1/2/2017     -1       1

df['is_min'] = 0
df.loc[df.index.isin(df.groupby('date')['value'].idxmin()), 'is_min'] = 1
print (df)
       date  value  is_min
0  1/1/2017     -3       1
1  1/1/2017     -1       0
2  1/1/2017      5       0
3  1/2/2017      4       0
4  1/2/2017      9       0
5  1/2/2017     -1       1

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python Pandas:根据另一个数据框的类别值创建新列

来自分类Dev

使用 Pandas 根据现有列值向数据框添加新列

来自分类Dev

根据条件从另一个数据框的值向数据框添加新列

来自分类Dev

pandas 数据框创建一个新列,其值基于另一列上的 groupby sum

来自分类Dev

根据groupby值从Pandas数据框中删除行

来自分类Dev

根据其他列行中的过滤值,在pandas数据框中创建一个新列

来自分类Dev

Pyspark:使用udf根据另一个数据框中的值向数据框中添加新列

来自分类Dev

比较两个数据框,然后根据另一个数据框向其中一个数据框添加新列

来自分类Dev

根据列值进行拟合后的Pandas Groupby

来自分类Dev

根据另一个数据框的行值在数据框中添加新列

来自分类Dev

熊猫:根据另一个数据框中的值在数据框中添加新列

来自分类Dev

根据数据框的其他列创建一个新的pandas数据框列

来自分类Dev

Python Pandas Groupby根据索引重置值

来自分类Dev

根据另一个数据框向熊猫数据框列添加值

来自分类Dev

如何根据其他列向pandas数据框添加新行?

来自分类Dev

“是否有 Pandas 函数可以根据数据框另一列的某些值添加新列?”

来自分类Dev

Python groupby - 根据其他列中的值创建一个新列

来自分类Dev

Groupby Pandas 数据框并根据排名有条件地删除值

来自分类Dev

根据Pandas中的ID将列值从一个数据框复制到另一个数据框

来自分类Dev

根据不同条件在Pandas数据框中创建一个新列

来自分类Dev

根据另一个数据框的内容向熊猫数据框添加一列

来自分类Dev

Python:Pandas:如何根据Groupby在另一列中查找最大值

来自分类Dev

Pandas 根据另一列的非空值创建一个新列

来自分类Dev

根据列名和最后一个非 NaN 值压缩 Pandas 数据框

来自分类Dev

根据多列中的值和相同条件在pandas中创建一个新列

来自分类Dev

根据其他列的值向熊猫数据框添加新列

来自分类Dev

根据一个值添加新列

来自分类Dev

根据Groupby在Pandas中的列中的值从DataFrame中选择CONSECUTIVE行

来自分类Dev

Pandas 根据传入实时数据的索引为新行分配一个值

Related 相关文章

  1. 1

    Python Pandas:根据另一个数据框的类别值创建新列

  2. 2

    使用 Pandas 根据现有列值向数据框添加新列

  3. 3

    根据条件从另一个数据框的值向数据框添加新列

  4. 4

    pandas 数据框创建一个新列,其值基于另一列上的 groupby sum

  5. 5

    根据groupby值从Pandas数据框中删除行

  6. 6

    根据其他列行中的过滤值,在pandas数据框中创建一个新列

  7. 7

    Pyspark:使用udf根据另一个数据框中的值向数据框中添加新列

  8. 8

    比较两个数据框,然后根据另一个数据框向其中一个数据框添加新列

  9. 9

    根据列值进行拟合后的Pandas Groupby

  10. 10

    根据另一个数据框的行值在数据框中添加新列

  11. 11

    熊猫:根据另一个数据框中的值在数据框中添加新列

  12. 12

    根据数据框的其他列创建一个新的pandas数据框列

  13. 13

    Python Pandas Groupby根据索引重置值

  14. 14

    根据另一个数据框向熊猫数据框列添加值

  15. 15

    如何根据其他列向pandas数据框添加新行?

  16. 16

    “是否有 Pandas 函数可以根据数据框另一列的某些值添加新列?”

  17. 17

    Python groupby - 根据其他列中的值创建一个新列

  18. 18

    Groupby Pandas 数据框并根据排名有条件地删除值

  19. 19

    根据Pandas中的ID将列值从一个数据框复制到另一个数据框

  20. 20

    根据不同条件在Pandas数据框中创建一个新列

  21. 21

    根据另一个数据框的内容向熊猫数据框添加一列

  22. 22

    Python:Pandas:如何根据Groupby在另一列中查找最大值

  23. 23

    Pandas 根据另一列的非空值创建一个新列

  24. 24

    根据列名和最后一个非 NaN 值压缩 Pandas 数据框

  25. 25

    根据多列中的值和相同条件在pandas中创建一个新列

  26. 26

    根据其他列的值向熊猫数据框添加新列

  27. 27

    根据一个值添加新列

  28. 28

    根据Groupby在Pandas中的列中的值从DataFrame中选择CONSECUTIVE行

  29. 29

    Pandas 根据传入实时数据的索引为新行分配一个值

热门标签

归档