Reputation: 153
index city state_id state_name county_name zip_codes
12846 Alpine CA California San Diego 91901 91903
12860 Granite Hills CA California San Diego 92021 92019
12975 Casa de Oro-Mount CA California San Diego 91977 91941 92020 91976
i need to split the zip codes into subgroups but i want to have same rows with same values for instance :
index city state_id state_name county_name zip_codes
12846 Alpine CA California San Diego 91901
12846 Alpine CA California San Diego 91903
12860 Granite Hills CA California San Diego 92021
12860 Granite Hills CA California San Diego 92019
12975 Casa de Oro-Mount CA California San Diego 91977
12975 Casa de Oro-Mount CA California San Diego 91941
12975 Casa de Oro-Mount CA California San Diego 92020
12975 Casa de Oro-Mount CA California San Diego 91976
Upvotes: 2
Views: 49
Reputation: 863291
Solution for pandas 0.25+ - use Series.str.split
with DataFrame.assign
to same column for lists and then use DataFrame.explode
:
df1 = df.assign(zip_codes = df['zip_codes'].str.split()).explode('zip_codes')
print (df1)
city state_id state_name county_name zip_codes
index
12846 Alpine CA California San Diego 91901
12846 Alpine CA California San Diego 91903
12860 Granite Hills CA California San Diego 92021
12860 Granite Hills CA California San Diego 92019
12975 Casa de Oro-Mount CA California San Diego 91977
12975 Casa de Oro-Mount CA California San Diego 91941
12975 Casa de Oro-Mount CA California San Diego 92020
12975 Casa de Oro-Mount CA California San Diego 91976
Upvotes: 1