比较熊猫中的行

lwu29:

我有一个熊猫数据框,看起来像这样:

df = pd.DataFrame( [ ['A','one',7], ['A','two',8], ['B','one',9], ['B','two',6]], columns=['ID', 'Type', 'Price'])

    ID  Type    Price
0   A   one     7
1   A   two     8
2   B   one     9
3   B   two     6

我想添加一列,该列是每个ID之间比较“价格”的结果。所以结果看起来像这样:

    ID  Type    Price   Level
0   A   one        7    low
1   A   two        8    high
2   B   one        9    high
3   B   two        6    low

我正在寻找一种有效的方法来做到这一点。谢谢!

YOBEN_S:

我们可以尝试groupby+ rank,然后map

df['Level']=df.groupby('ID').Price.rank().map({1:'low',2:'high'})
df
Out[221]: 
  ID Type  Price Level
0  A  one      7   low
1  A  two      8  high
2  B  one      9  high
3  B  two      6   low

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章