【发布时间】:2019-09-09 21:54:29
【问题描述】:
假设我有一个频率表df 定义为:
dat = [[0, 2, 1], [1, 0, 3], [4, 1, 1]]
idx = pd.Index([*'abc'], name='One')
col = pd.Index([*'xyz'], name='Two')
df = pd.DataFrame(dat, idx, col)
df
Two x y z
One
a 0 2 1
b 1 0 3
c 4 1 1
我如何“反转”它以获得数据框pre_df
One Two
0 a y
1 a y
2 a z
3 b x
4 b z
5 b z
6 b z
7 c x
8 c x
9 c x
10 c x
11 c y
12 c z
这样pd.crosstab(pre_df.One, pre_df.Two) 会让我回到df
Two x y z
One
a 0 2 1
b 1 0 3
c 4 1 1
【问题讨论】:
标签: python pandas pivot-table