Python:如何根据其他列的条件选择 Pandas 行?

标签 python pandas

我有一个如下所示的数据框

df
     city   val
0   London   3
1   London   -1
2   London   -1
3   Paris    -5
4   Paris    -2
5   Rome     2
6   Rome     2

我只想选择至少有一个 val < 0 的城市.我想要以下内容:

df
     city   val
0   London   3
1   London   -1
2   London   -1
3   Paris    -5
4   Paris    -2

最佳答案

locgroupby.transform(min) 一起使用:

>>> df.loc[df.groupby('city')['val'].transform(min).lt(0)]
     city  val
0  London    3
1  London   -1
2  London   -1
3   Paris   -5
4   Paris   -2
>>> 

因为你是在0以下过滤,如果每组的最小值低于0就过滤。

关于Python:如何根据其他列的条件选择 Pandas 行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69222605/

相关文章:

python - 我可以在 Web2Py 中包含局部 View ,将特定变量传递给它吗?

python - 如何用Python确定一个月中的所有周数?

python - web3.contract.functions.getAmount() 中的差异

python - 无法绘制正确比例的圆 Matplotlib Python

python - 将 pd.DataFrame Styler 对象的背景渐变色图居中

python - 将列合并为一个字符分隔的列适用于所有行

python - 如何将 map 插入 DynamoDB 表?

python - 基于列表反汇编和重新组装字符串

python - 向左合并混合数量的标识符

python - 使用 "in"运算符在 pd.Series 中查找元素不正确?