Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

Explode a column with multiple values separated by comma

How are you?

I have a database where some lines have more than one product and they are separated by a comma, as in the example below (there are other columns, but to make it more practical I only took these three).

id produdct value
47 product1, product 2 12000.0
48 product3 48000.0
49 product4, product1, product2 28800.0
50 product1 2000.0
51 product5, product2 32000.0
53 product3 128000.0
54 product2 15000.0
55 product4, product2, product5 96000.0

I need to separate each product, making a copy of that line for each one. I tried using some functions like explode, json_normalize, I tried creating a list of lists but nothing worked. Can you help me?

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

>Solution :

Just use str.split and explode

df['produdct'] = df['produdct'].str.split(', ')
new_df = df.explode('produdct')

   id   produdct     value
0  47   product1   12000.0
0  47  product 2   12000.0
1  48   product3   48000.0
2  49   product4   28800.0
2  49   product1   28800.0
2  49   product2   28800.0
3  50   product1    2000.0
4  51   product5   32000.0
4  51   product2   32000.0
5  53   product3  128000.0
6  54   product2   15000.0
7  55   product4   96000.0
7  55   product2   96000.0
7  55   product5   96000.0
Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading