首页  >  文章  >  后端开发  >  如何使用 NumPy 的“np.select”在数组中应用多个条件?

如何使用 NumPy 的“np.select”在数组中应用多个条件?

Susan Sarandon
Susan Sarandon原创
2024-10-19 12:57:02442浏览

How to Apply Multiple Conditions in Arrays Using NumPy's

使用 Numpy 的“where”应用多个条件

使用 NumPy 的“where”函数可以成为有条件选择数组中元素的强大工具基于具体标准。然而,“where”的标准实现仅允许两个条件具有相应的输出。在处理涉及多个条件的场景时,这可能会成为一个限制。

为了解决这个问题,更通用的解决方案是使用“np.select”函数。 “np.select”允许同时评估多个条件并分配相应的输出。让我们探讨如何将其应用于根据消耗能源值将能源类别分配给 DataFrame 的问题。

实现:

col = 'consumption_energy'
conditions = [ df['consumption_energy'] >= 400, (df['consumption_energy'] < 400) & (df['consumption_energy']> 200), df['consumption_energy'] <= 200 ]
choices = [ "high", 'medium', 'low' ]    
df['energy_class'] = np.select(conditions, choices, default=np.nan)

此代码创建了三个基于 'conspiration_energy' 列中的值的条件:

  1. 'conspiration_energy' >= 400:将此条件指定为 'high'。
  2. 'conspiration_energy'
  3. 第400章200:将此条件指定为“中”。
  4. “conspiration_energy”

    “np.select”函数评估每个条件,如果满足任何条件,它会从“选择”列表中分配相应的输出。如果没有满足任何条件,它将指定“nan”作为默认值。

    输出:

      consumption_energy  energy_class
    0                 459         high
    1                 416         high
    2                 186          low
    3                 250       medium
    4                 411         high
    5                 210       medium
    6                 343       medium
    7                 328       medium
    8                 208       medium
    9                 223       medium

    通过利用“np.select”,我们已根据指定条件成功将能量类别分配给 DataFrame,提供了在选择数组中的元素时处理多个条件的通用方法。

以上是如何使用 NumPy 的“np.select”在数组中应用多个条件?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn