Python 将dataframe中的值更改为列
我使用Python 将dataframe中的值更改为列,python,pandas,dataframe,yahoo,Python,Pandas,Dataframe,Yahoo,我使用yahoo_-finapi关于资产回报率(ROA)和股本回报率(ROE)检索雅虎金融基础数据,这为我提供了布局格式: Symbol Attribute Value 0 A ROA X% 1 A ROE XX% 2 B ROA Y% 3 B ROE YY% 4 C ROA Z% 5
yahoo_-fin
api关于资产回报率(ROA)和股本回报率(ROE)检索雅虎金融基础数据,这为我提供了布局格式:
Symbol Attribute Value
0 A ROA X%
1 A ROE XX%
2 B ROA Y%
3 B ROE YY%
4 C ROA Z%
5 C ROE ZZ%
0 1 2 3 4 5
Symbol A A B B C C
Attribute ROA ROE ROA ROE ROA ROE
Value X% XX% Y% YY% Z% ZZ%
Symbol ROA ROE
A X% XX%
B Y% YY%
C Z% ZZ%
我做了df.transpose()
,但给出了以下布局格式:
Symbol Attribute Value
0 A ROA X%
1 A ROE XX%
2 B ROA Y%
3 B ROE YY%
4 C ROA Z%
5 C ROE ZZ%
0 1 2 3 4 5
Symbol A A B B C C
Attribute ROA ROE ROA ROE ROA ROE
Value X% XX% Y% YY% Z% ZZ%
Symbol ROA ROE
A X% XX%
B Y% YY%
C Z% ZZ%
ROA和ROE在df
中表示为值
,我的目标是将这些值
转移到列
。我的理想布局格式:
Symbol Attribute Value
0 A ROA X%
1 A ROE XX%
2 B ROA Y%
3 B ROE YY%
4 C ROA Z%
5 C ROE ZZ%
0 1 2 3 4 5
Symbol A A B B C C
Attribute ROA ROE ROA ROE ROA ROE
Value X% XX% Y% YY% Z% ZZ%
Symbol ROA ROE
A X% XX%
B Y% YY%
C Z% ZZ%
我知道如何设置符号的索引,但需要首先将
df
中的值更改为列
。感谢您的建议,谢谢您的帮助。您可以使用pivot
df.pivot('Symbol','Attribute', 'Value')
输出
Attribute ROA ROE
Symbol
A X% XX%
B Y% YY%
C Z% ZZ%
您可以使用pivot
df.pivot('Symbol','Attribute', 'Value')
输出
Attribute ROA ROE
Symbol
A X% XX%
B Y% YY%
C Z% ZZ%
df.columns.name=None
删除“属性”df.columns.name=None
删除“属性”