我的数据框如下
输入项
Cntr Rate Kg Market Sections Dest
Pkg Per shp 0.5 WW S1,S2 AF
Pkg Per shp 0.5 TB S1,S2,S3 GB
Pkg Per shp 0.5 XS S1 SG
Pkg Per shp 0.5 WW ALL US
Pkg Per shp 0.5 WW S1,S2 FR
我想将数据框转换为以下格式。
“部分”列中的“所有”应在此处用最大值(S1,S2,S3)代替,然后应为其创建单独的行。
输出量
Cntr Rate Kg Market Sections Dest
Pkg Per shp 0.5 WW S1 AF
Pkg Per shp 0.5 WW S2 AF
Pkg Per shp 0.5 TB S1 GB
Pkg Per shp 0.5 TB S2 GB
Pkg Per shp 0.5 TB S3 GB
Pkg Per shp 0.5 XS S1 SG
Pkg Per shp 0.5 WW S1 US
Pkg Per shp 0.5 WW S2 US
Pkg Per shp 0.5 WW S3 US
Pkg Per shp 0.5 WW S1 FR
Pkg Per shp 0.5 WW S2 FR
如何在Python中创建?
尝试replace
然后split
和explode
df=df.assign(Sections=df.Sections.replace({'ALL':'S1,S2,S3'}).str.split(',')).explode('Sections')
Cntr Rate Kg Market Sections Dest
0 Pkg Pershp 0.5 WW S1 AF
0 Pkg Pershp 0.5 WW S2 AF
1 Pkg Pershp 0.5 TB S1 GB
1 Pkg Pershp 0.5 TB S2 GB
1 Pkg Pershp 0.5 TB S3 GB
2 Pkg Pershp 0.5 XS S1 SG
3 Pkg Pershp 0.5 WW S1 US
3 Pkg Pershp 0.5 WW S2 US
3 Pkg Pershp 0.5 WW S3 US
4 Pkg Pershp 0.5 WW S1 FR
4 Pkg Pershp 0.5 WW S2 FR
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句