2017-02-10 6 views
1

Ich habe einen großen Datenrahmen "df":Pandas - Konvertieren von Text in Spalten Binary

ph_level 
0 low 
1 medium 
2 low 
3 high 
4 low 
5 medium 

I 3 binäre Spalten hinzufügen mag für die niedrigen, mittleren, hohe Daten. Unten ist der Ausgang, den ich suche:

ph_level low_binary medium_binary high_binary 
0 low  1   0    0 
1 medium 0   1    0 
2 low  1   0    0 
3 high  0   0    1 
4 low  1   0    0 
5 medium 0   1    0 

Gibt es einen sehr schnellen Weg, dies mit Pandas zu tun?

Dank

Antwort

3

Sie pandas.get_dummies verwenden können und das Ergebnis mit dem ursprünglichen Datenrahmen verketten:

pd.concat([df, pd.get_dummies(df.ph_level).rename(columns = "{}_binary".format)], axis = 1) 

enter image description here

+0

super schnell! Danke Psidom. –

Verwandte Themen