I need read a csv file and fill the empty/null values in column "Phone and Email" based on the person's address and write to a new csv file. Ex: if a person "Jonas Kahnwald" doesn't have the phone number or an email address but has the same address as the person above or below, say "Hannah Kahnwald", then we should fill the empty/null values with those person's details.
I won't be able to use python pandas as the rest of the code/programs are purely based on python 2.7 (unfortunately), so I just need to write a function or a logic to capture this information alone.
Input format/table looks like below with empty cells (csv file):
FirstName,LastName,Phone,Email,Address
Hannah,Kahnwald,1457871452,hannkahn@gmail.com,145han street
Micheal,Kahnwald,6231897383,,145han street
Jonas,Kahnwald,,,145han street
Mikkel,Nielsen,4509213887,mikneil@yahoo.com,887neil ave
Magnus,Nielsen,,magnusneil@kyle.co,887neil ave
Ulrich,Nielsen,,,887neil ave
katharina,Nielsen,,,887neil ave
Elisabeth,Doppler,5439001211,elsisop@amaz.com,211elis park
Peter,Doppler,,,211elis park
bartosz,Tiedmannn,6263172828,tiedman@skype.com,828alex street
Alexander,washington,,,321notsame street
claudia,Tiedamann,,,828alex street
Output format should be like below:
Hannah,Kahnwald,1457871452,hannkahn@gmail.com,145han street
Micheal,Kahnwald,6231897383,hannkahn@gmail.com,145han street
Jonas,Kahnwald,1457871452,hannkahn@gmail.com,145han street
Mikkel,Nielsen,4509213887,mikneil@yahoo.com,887neil ave
Magnus,Nielsen,4509213887,magnusneil@kyle.co,887neil ave
Ulrich,Nielsen,4509213887,mikneil@yahoo.com,887neil ave
katharina,Nielsen,4509213887,mikneil@yahoo.com,887neil ave
Elisabeth,Doppler,5439001211,elsisop@amaz.com,211elis park
Peter,Doppler,5439001212,elsisop@amaz.com,211elis park
bartosz,Tiedmannn,6263172828,tiedman@skype.com,828alex street
Alexander,washington,,,321notsame street
claudia,Tiedamann,6263172828,tiedman@skype.com,828alex street
import csv,os
def get_info(file path):
data = []
with open(file, 'rb') as fin:
csv_reader = csv.reader(fin)
next(reader)
for each in csv_reader:
FirstName = each[0]
LN = each[1]
Phone = "some function or logic"
email = " some function or logic"
Address = each[4]
login = ""
logout = ""
data.append([FirstName,LN,Phone,email,Address,login,logout])
f.close()
return data