Mapping external values to dataframe values in Pandas

08 Jan, 2019
Mapping external value to a dataframe means using different sets of values to add in that dataframe by keeping the keys of external dictionary as same as the one column of that dataframe.
To add external values in dataframe, we use dictionary which has keys and values which we want to add in the dataframe. By adding external values in the dataframe one column will be added to the current dataframe. We can also map or combine one dataframe to other dataframe with the help of pandas.
Method #1: Using mapping function
By using this mapping function we can add one more column to an existing dataframe. Just keep in mind that no key values will be repeated it will make the data inconsistent.
# Creating new dataframeimport pandas as pd  initial_data = {'First_name': ['Ram', 'Mohan', 'Tina', 'Jeetu', 'Meera'],         'Last_name': ['Kumar', 'Sharma', 'Ali', 'Gandhi', 'Kumari'],         'Age': [42, 52, 36, 21, 23],         'City': ['Mumbai', 'Noida', 'Pune', 'Delhi', 'Bihar']}  df = pd.DataFrame(initial_data, columns = ['First_name', 'Last_name',                                                      'Age', 'City'])  # Create new column using dictionarynew_data = { "Ram":"B.Com",             "Mohan":"IAS",             "Tina":"LLB",             "Jeetu":"B.Tech",             "Meera":"MBBS" }  # combine this new data with existing DataFramedf["Qualification"] = df["First_name"].map(new_data)  print(df)
First_name Last_name  Age    City    Qualification
0        Ram     Kumar   42  Mumbai         B.Com
1      Mohan    Sharma   52   Noida           IAS
2       Tina       Ali   36    Pune           LLB
3      Jeetu    Gandhi   21   Delhi        B.Tech
4      Meera    Kumari   23   Bihar          MBBS

 Method #2: Using replace function
In this method, we can add or replace some of the value of the dataframe by some defined external values.
# Creating new dataframeimport pandas as pdinitial_data = {'First_name': ['Ram', 'Mohan', 'Tina', 'Jeetu', 'Meera'],                 'Last_name': ['Kumar', 'Sharma', 'Ali', 'Gandhi', 'Kumari'],                 'Age': [42, 52, 36, 21, 23],                 'City': ['Mumbai', 'Noida', 'Pune', 'Delhi', 'Bihar']}  df = pd.DataFrame(initial_data, columns = ['First_name', 'Last_name',                                                      'Age', 'City'])  # Create new column using dictionarynew_data = { "Ram":"Shyam",             "Tina":"Riya",             "Jeetu":"Jitender" }  print(df, end ="\n\n")  # combine this new data with existing DataFramedf = df.replace({"First_name":new_data})print(df)
First_name Last_name  Age    City
0        Ram     Kumar   42  Mumbai
1      Mohan    Sharma   52   Noida
2       Tina       Ali   36    Pune
3      Jeetu    Gandhi   21   Delhi
4      Meera    Kumari   23   Bihar

  First_name Last_name  Age    City
0      Shyam     Kumar   42  Mumbai
1      Mohan    Sharma   52   Noida
2       Riya       Ali   36    Pune
3   Jitender    Gandhi   21   Delhi
4      Meera    Kumari   23   Bihar

 Method #3: Using update function
In this method we can update the dataframe values by using index values we can change the value of columns by external data.
# Creating new dataframeimport pandas as pd  initial_data = {'First_name': ['Ram', 'Mohan', 'Tina', 'Jeetu', 'Meera'],                 'Last_name': ['Kumar', 'Sharma', 'Ali', 'Gandhi', 'Kumari'],                 'Age': [42, 52, 36, 21, 23],                 'City': ['Mumbai', 'Noida', 'Pune', 'Delhi', 'Bihar']}  df = pd.DataFrame(initial_data, columns = ['First_name', 'Last_name',                                                      'Age', 'City'])  # Create new column using dictionarynew_data = { 0:"Shyam",             2:"Riya",             3:"Jitender" }  # combine this new data with existing DataFramedf["First_name"].update(pd.Series(new_data))print(df)
First_name Last_name  Age    City
0      Shyam     Kumar   42  Mumbai
1      Mohan    Sharma   52   Noida
2       Riya       Ali   36    Pune
3   Jitender    Gandhi   21   Delhi
4      Meera    Kumari   23   Bihar

pandas-dataframe-program
Picked
Python pandas-dataFrame
Python-pandas
Technical Scripter 2018
Python
Technical Scripter
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
How to iterate through Excel rows in Python?
Deque in Python
Defaultdict in Python
Queue in Python
Rotate axis tick labels in Seaborn and Matplotlib
Check if element exists in list in Python
Python Classes and Objects
Bar Plot in Matplotlib
Python OOPs Concepts
How To Convert Python Dictionary To JSON?