Panda DF:在有条件的多列中查找最小值

Posted

技术标签:

【中文标题】Panda DF:在有条件的多列中查找最小值【英文标题】:Panda DF : Find minimum in multiple columns with condition 【发布时间】:2020-10-08 14:36:02 【问题描述】:

在 pandas 数据框中,我试图找到尊重另一列(一种 SQL WHERE)中的条件的不同列的最小值

MIN = (dataframe[['col_1','col_2','col_3', 'col_4']].min().min())

但我希望仅在 'col_5' == 'YES' 处计算 MIN

我试图在论坛中找到,但我无法合并“多列最小值”和“条件最小值”..

谢谢!

【问题讨论】:

请创建一些模拟数据,以便我们为您提供可验证的解决方案。 dataframe[dataframe['col_5']='YES'].min().min(). 【参考方案1】:

所以你想要类似的东西

MIN = dataframe[dataframe['col_5'] == 'YES']['col_1','col_2','col_3', 'col_4'].min().min()

或更易读的版本

dataframe_yes = dataframe[dataframe['col_5'] == 'YES']
MIN = dataframe_yes[['col_1','col_2','col_3', 'col_4']].min().min()

【讨论】:

正是我想要的!

以上是关于Panda DF:在有条件的多列中查找最小值的主要内容,如果未能解决你的问题,请参考以下文章

从具有多列的 .txt 文件中查找最大值、最小值

使用 panda apply() 函数将每个子组的所有值替换为子组最小值(无循环)

SQL中如何取多列的最大值?

多个条件查找最小和最大日期值

按条件过滤大熊猫

在 Excel 中查找符合条件的数据,查找最小日期,返回第三个值