如何将一列中的值转换为列名,然后从另一列中插入相应的值

时间:2018-08-23 04:48:30

标签: python pandas

我的熊猫数据框如下:

df1=pd.DataFrame({'customerId': ['1', '2','1','1','3'], 'productId': ['111','112','113','114','111'],'index':[1.0,3.0,4.0,2.5,6.3]})
df1[['customerId','productId','index']]

  customerId    productId   index
0     1          111         1.0
1     2          112         3.0
2     1          113         4.0
3     1          114         2.5
4     3          111         6.3

我想创建一个熊猫数据框,其中productId列中的值将成为列名,而这些列下的值是该customerId的索引列中的对应值,如下所示:

  customerId    111    112   113    114
0    1          1.0    0.0   4.0    2.5
1    2          0.0    3.0   0.0    0.0
2    3          6.3    0.0   0.0    0.0

注意:由于可以使用while / for循环来完成此操作,但是我只想在Pandas操作中执行它,因为我正在处理的数据帧很大,因此循环会花费很多时间。因此,请提出在Pandas中执行此操作的任何有效方法。

0 个答案:

没有答案