Wie ändert man color
列添加到以下数据帧,以便 color='green'
如果 set == 'z'
,否则 color='red'
?
Type Set 1 A Z 2 B Z 3 B X 4 C Y
Wenn Sie nur zwei Möglichkeiten haben, verwenden Sie np.where
:
df['color'] = np.where(df['set']=='z', 'green', 'red')
Zum Beispiel
import pandas as pd import numpy as np df = pd.dataframe({'type':list('abbc'), 'set':list('zzxy')}) df['color'] = np.where(df['set']=='z', 'green', 'red') print(df)
Ausgabe
set type color 0 z a green 1 z b green 2 x b red 3 y c red
Wenn Sie mehr als zwei Bedingungen haben, verwenden Sie bitte np.select
np.select
。例如,如果您希望 color
color
yellow
当 (df['set'] == 'z') & (df['type'] == 'a')
blue
当 (df['set'] == 'z') & (df['type'] == 'b')
Sonst purple
当 (df['type'] == 'b')
Sonst black
Sonst Dann verwenden Sie
df = pd.dataframe({'type':list('abbc'), 'set':list('zzxy')}) conditions = [ (df['set'] == 'z') & (df['type'] == 'a'), (df['set'] == 'z') & (df['type'] == 'b'), (df['type'] == 'b')] choices = ['yellow', 'blue', 'purple'] df['color'] = np.select(conditions, choices, default='black') print(df)
Set Type color 0 Z A yellow 1 Z B blue 2 X B purple 3 Y C black
Das obige ist der detaillierte Inhalt vonWie erstelle ich eine neue Spalte mit ausgewählten Werten basierend auf einer vorhandenen Spalte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!