2017-05-27 7 views
1

Werte der Serie zuzuordnen habe ich Series mit Werten:Wie Spaltennamen von Datenrahmen

0    1_AA 
1    2_BB 
2    3_CC 
3    4_DD 

und ich möchte diese Serie zu Namen von Datenrahmen Spalten konvertieren. Es sollte so aussehen:

 1_AA  2_BB  3_CC 4_DD 
0 

Ist es möglich?

Antwort

1

Man könnte einfach die columns -Argument für DataFrame verwenden

>>> pd.DataFrame(columns=['1_AA', '2_BB', '3_CC', '4_DD']) 
Empty DataFrame 
Columns: [1_AA, 2_BB, 3_CC, 4_DD] 
Index: [] 
0

könnten Sie dict.fromkeys verwenden:

>>> import pandas as pd 

>>> s = pd.Series(['1_AA', '2_BB', '3_CC', '4_DD']) 
>>> pd.DataFrame(dict.fromkeys(s, [0])) # each column containing one zero - [0] 
    1_AA 2_BB 3_CC 4_DD 
0  0  0  0  0 

Oder collections.OrderedDict, die garantuees, dass die Reihenfolge der Werte ist immer gehalten:

>>> from collections import OrderedDict 
>>> pd.DataFrame(OrderedDict.fromkeys(s, [0])) 
    1_AA 2_BB 3_CC 4_DD 
0  0  0  0  0 

Sie auch leere Listen als zweites Argument verwenden könnte für fromkeys:

>>> pd.DataFrame(dict.fromkeys(s, [])) 
Empty DataFrame 
Columns: [1_AA, 2_BB, 3_CC, 4_DD] 
Index: [] 

Aber das erstellt einen leeren Datenrahmen - mit den richtigen Spalten.

>>> import pandas as pd 

>>> s = pd.Series(['a', 'b', 'c']) 
>>> pd.DataFrame(columns=s) 
Empty DataFrame 
Columns: [a, b, c] 
Index: [] 

oder direkt als Liste übergeben in:

Verwandte Themen