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

How to retain elements from pandas dict

I have he below code like this which splits the address column and pops if length of add dict equal to 4 or 5(see code).

import pandas as pd

data = {'address': ["William J. Clare\\n290 Valley Dr.\\nCasper, WY 82604\\nUSA",
                    "1180 Shelard Tower\\nMinneapolis, MN 55426\\nUSA",
                    "William N. Barnard\\n145 S. Durbin\\nCasper, WY 82601\\nUSA",
                    "215 S 11th ST"]
        }

df = pd.DataFrame(data)
df_dict = df.to_dict('records')

for row in df_dict:
    add = row["address"]
    print(add.split("\\n"), len(add.split("\\n")))
    if len(add.split("\\n"))==4:
       target = add.split("\\n")
       target.pop(0)
       target = '\\n'.join(target)
    if len(add.split("\\n"))==5:
       target = add.split("\\n")
       target.pop(0)
       target.pop(1)
       target = '\\n'.join(target)
    print(target)

However, instead of giving condition to pop, I would like to retain last three elements of the dict with if len(add.split("\\n") > 3 I need a command which retains only last three elements instead of popping the elements.

like this:

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

address
290 Valley Dr.\\nCasper, WY 82604\\nUSA
1180 Shelard Tower\\nMinneapolis, MN 55426\\nUSA
145 S. Durbin\\nCasper, WY 82601\\nUSA
215 S 11th ST
``

Your help will be greatly appreciated. Thanks in advance

>Solution :

Instead of using pop(), it might work to use slicing, like target = target[-3:]. This tells it to take only the last three items in the list.

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