Полный подход к DataFrame
# Build your DataFrame
df = pd.DataFrame({
'Province': ['Badakhshan', 'Badghis', 'Baghlan', 'Balkh', 'Kapisa'],
'Centers': ['Fayzabad', 'QalaNaw', 'PuliKhumri', 'MazarSharif', 'MahmudRaqi'],
'Region': ['North East', 'West', 'North East', 'North West', 'Center']
})
# Split one column
new_df = pd.DataFrame(df.Region.str.split(' ').tolist(), index=[df.Province, df.Centers]).stack()
# Reset indices
new_df = new_df.reset_index([0, 'Province', 'Centers'])
# Rename columns if you want to
new_df.columns = ['Province', 'Centers', 'Regions']
# Print new DataFrame
>>>new_df
Province Centers Regions
0 Badakhshan Fayzabad North
1 Badakhshan Fayzabad East
2 Badghis QalaNaw West
3 Baghlan PuliKhumri North
4 Baghlan PuliKhumri East
5 Balkh MazarSharif North
6 Balkh MazarSharif West
7 Kapisa MahmudRaqi Center
Подход только к одной строке
# Build your DataFrame
df = pd.DataFrame({
'Province': ['Badakhshan', 'Badghis', 'Baghlan', 'Balkh', 'Kapisa'],
'Centers': ['Fayzabad', 'QalaNaw', 'PuliKhumri', 'MazarSharif', 'MahmudRaqi'],
'Region': ['North East', 'West', 'North East', 'North West', 'Center']
})
# Split one row only
new_list = df[df.Province=='Badakhshan'].Region.str.split(' ')[0]
# Replace to that location
df.loc[0, 'Region'] = new_list
# Explode column
df = df.explode('Region')
# Reindex
df = df.reset_index(drop=True)
# Print new DataFrame
>>>df
Province Centers Region
0 Badakhshan Fayzabad North
1 Badakhshan Fayzabad East
2 Badghis QalaNaw West
3 Baghlan PuliKhumri North East
4 Balkh MazarSharif North West
5 Kapisa MahmudRaqi Center
В качестве подсказки, адаптируйте то, что вы можете найти, и не надейтесь получить точные решения.И, пожалуйста, добавьте фрагменты кода и сообщите нам, что вы уже пытались сделать.