枢轴熊猫数据框,但无法理解获得的输出

时间:2018-10-23 18:16:12

标签: python pandas dataframe

我有一个熊猫数据框,其值如下:

**id**   **type**    **attr**     **value**
1         type1       key1          val1
1         type1       key2          val2
2         type1       key1          val3
2         type1       key2          val4

我希望输出为

**id**   **type**    **key1**     **key2**
1          type1       val1         val2
2.         type1       val3         val4

我正在尝试过滤具有相同ID的行,例如选择具有相同ID的行,然后创建新列,如上所示。

我尝试了以下操作,但得到了DataError: No numeric types to aggregate

pd.pivot_table(df, values='value', index=['id', 'type'], columns='attr').reset_index()

更新:

通过以下修改解决了数据错误:

df = pd.pivot_table(df, values='value', index=['id', 'type'], columns='attr', aggfunc='first')

但是我无法理解下面的输出。为什么attr,'key1'和key2列悬停在idtype上方?

attr      key1  key2
id type
1  type1  val1  val2
2  type1  val3  val4

0 个答案:

没有答案