我有一个格式如下的 pandas.Dataframe 对象:
Symb Bid Ask
ESU6 207000 207025
YMU6 12793 12797
ESU6 207025 207050
YMU6 12795 12797
但我想将对象重新配置为如下格式:
Bid.ESU6 Ask.ESU6 Bid.YMU6 Ask.YMU6
207000 207025
12793 12797
207025 207050
12795 12797
有没有一种无需遍历每个元素的 for 循环即可重新配置数据的简单方法?
提前致谢!
最佳答案
您可以使用 pivot_table
:
df1 = df.pivot_table(columns='Symb', values=['Bid','Ask'], index=df.index)
df1.sort_index(axis=1, level=1, inplace=True)
df1.columns = ['.'.join(col) for col in df1.columns]
df1.fillna('', inplace=True)
print (df1)
Bid.ESU6 Ask.ESU6 Bid.YMU6 Ask.YMU6
0 207000 207025
1 12793 12797
2 207025 207050
3 12795 12797
关于python - 制作一个新的 pandas.dataframe 列作为过滤的其他列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38204322/