我有一個這樣的熊貓資料框:
product name color sku
Men regular T-Shirt White, Black, Orange #VDY45P
Men T-Shirt Black, Orange #VFY55P
我的預期結果將是這樣的:
基本上我想為相關產品添加我的 sku 的 1 結尾。
product name color sku
Men regular T-Shirt White #VDY45P-01
Men regular T-Shirt Black #VDY45P-02
Men regular T-Shirt Orange #VDY45P-03
Men T-Shirt Black #VFY55P-01
Men T-Shirt Orange #VFY55P-02
uj5u.com熱心網友回復:
explode列,并添加cumcount每組的值:
(df
.assign(color=lambda d: d['color'].str.split(',\s*'))
.explode('color')
.assign(sku=lambda d: d['sku'] '-' d.groupby(level=0)
.cumcount().add(1)
.astype(str).str.zfill(2))
)
輸出:
product name color sku
0 Men regular T-Shirt White #VDY45P-01
0 Men regular T-Shirt Black #VDY45P-02
0 Men regular T-Shirt Orange #VDY45P-03
1 Men T-Shirt Black #VFY55P-01
1 Men T-Shirt Orange #VFY55P-02
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/468912.html
下一篇:替換列資料框中的字母數字值
