2016-12-05 7 views
4

ich einen Datenrahmen wie die folgende haben:Wie Werte Zelle als neue Spalten in Pandas Datenrahmen

Labels 
1 Nail_Polish,Nails 
2 Nail_Polish,Nails 
3 Foot_Care,Targeted_Body_Care 
4 Foot_Care,Targeted_Body_Care,Skin_Care 

ich die folgende Matrix erzeugen möchten:

Nail_Polish Nails Foot_Care Targeted_Body_Care Skin_Care 
1  1   1   0    0    0 
2  1   1   0    0    0 
3  0   0   1    1    0 
4  0   0   1    1    1 

Wie kann ich das erreichen?

Antwort

4

Verwendung str.get_dummies:

df2 = df['Labels'].str.get_dummies(sep=',') 

Die resultierende Ausgabe:

Foot_Care Nail_Polish Nails Skin_Care Targeted_Body_Care 
1   0   1  1   0     0 
2   0   1  1   0     0 
3   1   0  0   0     1 
4   1   0  0   1     1 
+0

Wenn ich wieder eine neue Zeile haben: 5 Foot_Care, Nägel Wie kann ich es in die Matrix? –

+0

Im Idealfall würden Sie warten, bis Sie alle erforderlichen Zeilen haben, und dann alles gleichzeitig tun. Wenn das nicht möglich ist, verwenden Sie das gleiche Verfahren wie oben bei den neuen Zeilen und verwenden Sie dann 'concat' und möglicherweise' fillna (0) ', um die alten und neuen Zeilen zu kombinieren. – root

Verwandte Themen