我试图生成一个pivot表结构,但是只从两列数据中生成。我所拥有的是这个通用的数据帧
df = pd.DataFrame({'name': ['Australia', 'Japan', 'Brazil'], 'code': ['R1', 'R2', 'R3']})
我要实现的是在列和索引中都有name
字段,以及来自{Australia
行和Japan
列中有R1-R2
的值,Brazil
行和Australia
列中有{
我尝试使用这个函数,但我不确定pivot_table
在索引和列中是否可以使用相同的值。在
pd.pivot_table(df, values='code', index=['name'], columns=['name'], aggfunc=lambda x: '-'.join(x))
基本上,输出应该是这种形式(尽管可能有索引和列名),而不是手动生成的
data = {'Australia': ['R1-R1', 'R2-R1', 'R3-R1'],
'Japan': ['R1-R2', 'R2-R2', 'R3-R2'],
'Brazil': ['R1-R3', 'R2-R3', 'R3-R3']}
df_result = pd.DataFrame(data, columns=['Australia', 'Japan', 'Brazil'], index=['Australia', 'Japan', 'Brazil'])
谢谢!在
一种方法,你可以这样做:
输出:
^{pr2}$相关问题 更多 >
编程相关推荐