Python熊猫索引改革

时间:2014-12-28 20:13:46

标签: python pandas

我有一个CSV表,其数据类似于以下内容:

Customer    Product    Quantity

C1          P1         2
C2          P1         3
C1          P2         4
C3          P2         1
C3          P1         0
C2          P2         5

我想将其转换为以下格式:

Customer    P1    P2

C1          2     4
C2          3     5
C3          1     0

我知道我可以使用pandas导入文件,如下所示:

import pandas as pd
data = pd.read_csv('my_file.csv')

但是,之后我不知道该怎么做。

我曾尝试使用pandas多索引,但无法理解它。如何重新构建新的CSV数据对象?任何帮助将不胜感激,谢谢。

P.S。我可以考虑多个指数完成我的问题。例如,假设我们在表的左侧添加了一列,其中包含购买日期。怎么办呢?

1 个答案:

答案 0 :(得分:5)

这是pivot操作的示例:

>>> df
  Customer Product  Quantity
0       C1      P1         2
1       C2      P1         3
2       C1      P2         4
3       C3      P2         1
4       C3      P1         0
5       C2      P2         5
>>> df.pivot(index="Customer", columns="Product", values="Quantity")
Product   P1  P2
Customer        
C1         2   4
C2         3   5
C3         0   1

建议阅读reshaping上的文档部分。

(PS:我假设您的文件实际上有逗号,即使您没有显示任何内容 - 否则pd.read_csv需要额外的参数,例如delim_whitespace=True或其他内容。)

相关问题