如何将第二列(SERVICE_SKU)分成多列?
PRODUCT_SKU SERVICE_SKU
join
0 01FT562 CON-OSP-C9250I:CON-OS-C9250I:CON-SNTP-C9250I:C...
1 01FT563 CON-SNT-C9132I:CON-S2P-C9132I:CON-OSE-C9132I:C...
print(df3.columns, '\n\n\n')
MultiIndex(levels=[['SERVICE_SKU'], ['join']],
codes=[[0], [0]])
当我使用以下代码拆分为单元格时,出现错误(AttributeError:“ DataFrame”对象没有属性“ str”)。
df3[
[
'1',
'2',
'3',
'4',
]
] = df2.SERVICE_SKU.str.split(":", expand=True)
答案 0 :(得分:0)
我认为最简单的是通过MultiIndex.droplevel
删除第二级:
df2.columns = df2.columns.droplevel(1)
df2.SERVICE_SKU.str.split(":", expand=True)
如果要使用Multiindex
:
df2[('SERVICE_SKU', 'join')].str.split(":", expand=True)
另一种解决方案是平整级别并加入:
df2.columns = df2.columns.map('_'.join)
df2.SERVICE_SKU_join.str.split(":", expand=True)