如何根据列值重塑熊猫数据框

时间:2020-05-01 14:43:47

标签: python pandas

我试图根据列值重塑数据,然后转置数据框,以使列值组成为列标题。例如,我想去:

# Creating an illustrative dataframe:

import pandas as pd
import numpy as np

categories = np.repeat(list('abc'), 3)
data = np.arange(len(categories))
df = pd.DataFrame({'Data': data, 'Data2': data*2, 'Category': categories})

   Data  Data2 Category
0     0      0        a
1     1      2        a
2     2      4        a
3     3      6        b
4     4      8        b
5     5     10        b
6     6     12        c
7     7     14        c
8     8     16        c

外观如下:

   a  b  c
0  0  3  6
1  1  4  7
2  2  5  8

我尝试过使用pd.DataFrame.pivot()的方法:

[In]
df.pivot(columns='Category', values='Data')

[Out]
Category    a    b    c
0         0.0  NaN  NaN
1         1.0  NaN  NaN
2         2.0  NaN  NaN
3         NaN  3.0  NaN
4         NaN  4.0  NaN
5         NaN  5.0  NaN
6         NaN  NaN  6.0
7         NaN  NaN  7.0
8         NaN  NaN  8.0

使用pd.DataFrame.pivot()时是否有一种“忽略”索引的方法,还是有一种产生所需输出的替代方法?

0 个答案:

没有答案