Wie füge ich mit Numpy „where' eine Spalte zu einem DataFrame mit mehr als zwei Bedingungen hinzu?

Mary-Kate Olsen
Freigeben: 2024-10-19 13:02:02
Original
390 Leute haben es durchsucht

How to Add a Column to a DataFrame Using Numpy

Numpy „where“ mit mehreren Bedingungen: Behandlung von drei Bedingungen

Problembeschreibung:

Das Hinzufügen einer neuen Spalte zu einem Datenrahmen basierend auf mehreren Bedingungen wird schwierig, wenn mehr als zwei Bedingungen vorliegen. Das gegebene Szenario erfordert die Erstellung einer Spalte „energy_class“ mit „hohen“, „mittleren“ oder „niedrigen“ Werten basierend auf den Werten der Spalte „consumption_energy“.

Lösung:

Obwohl numpy.where nur zwei Bedingungen verarbeiten kann, löst eine clevere Problemumgehung mit numpy.select das Problem.

Python-Code:

<code class="python"># Define column and conditions
col = 'consumption_energy'
conditions = [df2[col] >= 400, (df2[col] < 400) & (df2[col] > 200), df2[col] <= 200]

# Define choices for conditions
choices = ["high", 'medium', 'low']

# Add "energy_class" column with np.select
df2["energy_class"] = np.select(conditions, choices, default=np.nan)</code>
Nach dem Login kopieren

Beispielausgabe:

  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
Nach dem Login kopieren

Zusätzlicher Hinweis:

default=np.nan weist Zeilen NaN-Werte zu, die keine Bedingungen erfüllen . Sie können dies an Ihre Bedürfnisse anpassen.

Das obige ist der detaillierte Inhalt vonWie füge ich mit Numpy „where' eine Spalte zu einem DataFrame mit mehr als zwei Bedingungen hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!