Python列删除特殊字符并排列值
我有一个如下所示的数据框Python列删除特殊字符并排列值,python,python-3.x,pandas,Python,Python 3.x,Pandas,我有一个如下所示的数据框 columnA columnB columnC [['Beauty & Wellness/Beauty Mavens', '21', '17', '22'], ['Beauty
columnA columnB columnC
[['Beauty & Wellness/Beauty Mavens', '21', '17', '22'], ['Beauty & Wellness/Frequently Visits Salons', '22', '21', '25']] GA_All_B2B_Visitors_Jan20 2020-01-10 to 2020-01-15
[['Banking & Finance/Avid Investors', '585', '455', '700'], ['Beauty & Wellness/Beauty Mavens', '414', '339', '467']] GA_Oven_Page_Visitors_Nov2019 2020-01-10 to 2020-01-15
我正试着把它安排成下面的样子,我从哪里开始就被卡住了:
columnA cola colb colc columnB columnC
Beauty & Wellness/Beauty Mavens 21 17 22 GA_All_B2B_Visitors_Jan20 2020-01-10 to 2020-01-15
Beauty & Wellness/Frequently Visits Salons 22 21 25 GA_All_B2B_Visitors_Jan20 2020-01-10 to 2020-01-15
Banking & Finance/Avid Investors 585 455 700 GA_Oven_Page_Visitors_Nov2019 2020-01-10 to 2020-01-15
Beauty & Wellness/Beauty Mavens 414 339 467 GA_Oven_Page_Visitors_Nov2019 2020-01-10 to 2020-01-15
我的方法如下所示,但从何处开始就被卡住了。
我首先尝试拆分第一列的值,但它不起作用
df_seg = pd.concat([df_seg[['columnB', 'columnC']], df_seg['columnA'].str.split(', ', expand=True)], axis=1)
有人能帮忙吗?使用
能够创建一个包含两个列表内容的数据框
,并将其与
使用
能够创建一个包含两个列表内容的数据框
,并将其与
new_df = df.explode('columnA').reset_index(drop=True)
new_df = (pd.DataFrame(new_df['columnA'].tolist(),
columns = ['columnA','cola','colb','colc'])
.join(new_df[['columnB','columnC']]))
print(new_df)
columnA cola colb colc \
0 Beauty & Wellness/Beauty Mavens 21 17 22
1 Beauty & Wellness/Frequently Visits Salons 22 21 25
2 Banking & Finance/Avid Investors 585 455 700
3 Beauty & Wellness/Beauty Mavens 414 339 467
columnB columnC
0 GA_All_B2B_Visitors_Jan20 2020-01-10 to 2020-01-15
1 GA_All_B2B_Visitors_Jan20 2020-01-10 to 2020-01-15
2 GA_Oven_Page_Visitors_Nov2019 2020-01-10 to 2020-01-15
3 GA_Oven_Page_Visitors_Nov2019 2020-01-10 to 2020-01-15