如何用Python的pandas实现DataFrame行的拆分,或者其他方法也可以。

大致目标就是以'Freq'列的分号拆分行,'Cfg'列的值也按分号匹配拆分,由于
'Cfg'列的分号多于'Freq'列,多余分号后的数值忽略掉, Freq'列为空的话,'Cfg'列 也让它为空,或者不做处理。

原DataFrame创建代码

import pandas as pd
import numpy as np
dict1 = {'MEID':['31102','31103','31104'],
       'Freq':['','4.0 ','5.0;35.0;36.0'],
       'Cfg':['10;30;40;60;70;70;70','10;30;40;60;70;70;70','10;30;40;60;70;70;70']}
df1 = pd.DataFrame(dict1)
print(df1)

原DataFrame

MEID         Freq                      Cfg
311302                                10;30;40;60;70;70;70
311303       4.0                      10;30;40;60;70;70;70
311304       5.0;35.0;36.0            10;30;40;60;70;70;70

目标DataFrame

MEID         Freq         Cfg
311302                                
311303       4.0           10
311304       5.0           10
311304       35.0          30
311304       36.0          40

为防止我文字没描述清楚,我把目标DF和原DF的数据关系用下图表示一下。

图片说明

1个回答

Donald_Zhao
Doss_Zhao 这个只能针对一列中的行拆分,这个问题的难点在于cfg列的匹配
3 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!