簡體   English   中英

帶有列表條目熊貓數據框的數據透視表

[英]Pivot table with list entries pandas data frame

我有一個數據框,其中的條目如下所示:

customer_id    products_purchased
1              A,B,D,Q
2              B,K,T
3              A
4              M,H,U,R,T,Z
1              A,U,C
3              P,T
.
.
.

我想生成一個數據透視表,其中包含 customer_id,然后是每個產品的列和計數(如果客戶從未購買過該產品,則為 0)。 對於上面的例子:

customer_id    A     B     C     D     H     K     M     P     Q     R     T     U     Z
1              2     1     1     1     0     0     0     0     1     0     0     1     0
2              0     1     0     0     0     1     0     0     0     0     1     0     0
3              1     0     0     0     0     0     0     1     0     0     1     0     0
4              0     0     0     0     1     0     1     0     0     1     1     1     0

還有一個日期時間列來指示購買的時間,但這對於這個特定問題並不重要。

這是str.get_dummies然后是 groupby:

(df['products_purchased'].str.get_dummies(',')
   .groupby(df['customer_id']).sum()
   .reset_index()
)

輸出:

   customer_id  A  B  C  D  H  K  M  P  Q  R  T  U  Z
0            1  2  1  1  1  0  0  0  0  1  0  0  1  0
1            2  0  1  0  0  0  1  0  0  0  0  1  0  0
2            3  1  0  0  0  0  0  0  1  0  0  1  0  0
3            4  0  0  0  0  1  0  1  0  0  1  1  1  1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM