Heim >Backend-Entwicklung >Python-Tutorial >Wie verwende ich NumPy „where' mit mehreren Bedingungen für bedingte Operationen?

Wie verwende ich NumPy „where' mit mehreren Bedingungen für bedingte Operationen?

Linda Hamilton
Linda HamiltonOriginal
2024-10-19 12:59:02548Durchsuche

How to Use NumPy

NumPy „where“ mit mehreren Bedingungen verwenden

Bei der Arbeit mit Datenmanipulationsaufgaben ist es oft notwendig, verschiedene Bedingungen anzuwenden, um sie auszuwählen oder zu ändern spezifische Werte. Die „where“-Funktion von NumPy ist ein leistungsstarkes Tool für bedingte Operationen, verarbeitet jedoch standardmäßig nur zwei Bedingungen.

Stellen Sie sich den Fall vor, in dem Sie eine neue Spalte „energy_class“ zu einem Pandas-DataFrame namens hinzufügen möchten „df_energy.“ Die Energieklasse sollte anhand der folgenden Bedingungen zugewiesen werden:

  • „consumption_energy“-Werte größer als 400: „hoch“
  • „consumption_energy“-Werte zwischen 200 und 400: „medium“
  • „consumption_energy“-Werte kleiner oder gleich 200: „niedrig“

Da die „where“-Funktion von NumPy nicht mehrere Bedingungen unterstützt, liegt die Lösung in der Verwendung ihrer leistungsfähigeren Funktion Geschwister, „auswählen“. So lösen Sie dieses Problem:

import numpy as np

# Assuming df_energy has a column called "consumption_energy"
col = 'consumption_energy'
conditions = [ df_energy[col] >= 400,
             (df_energy[col] < 400) & (df_energy[col] > 200),
             df_energy[col] <= 200 ]
choices = [ "high", 'medium', 'low' ]

# Create the "energy_class" column using np.select
df_energy["energy_class"] = np.select(conditions, choices, default=np.nan)

Diese erweiterte Verwendung von „select“ ermöglicht es Ihnen, mehrere Bedingungen zu definieren und entsprechende Auswahlmöglichkeiten der Ausgabe zuzuordnen. Standardmäßig wird „np.nan“ zugewiesen, wenn keine der Bedingungen erfüllt ist.

Als Ergebnis wird in Ihrem DataFrame nun die Spalte „energy_class“ mit den entsprechenden Beschriftungen basierend auf Ihren angegebenen Bedingungen gefüllt eine klare Klassifizierung der Energieverbrauchswerte.

Das obige ist der detaillierte Inhalt vonWie verwende ich NumPy „where' mit mehreren Bedingungen für bedingte Operationen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn