在Pandas中把外部数值映射到数据框数值

在Pandas中把外部数值映射到数据框数值

将外部值映射到一个数据框架意味着使用不同的值集来添加到该数据框架中,保持外部字典的键与该数据框架的一列相同。

为了在数据框架中添加外部值,我们使用字典,其中有我们想要添加到数据框架中的键和值。通过在数据框架中添加外部值,一列将被添加到当前数据框架中。在pandas的帮助下,我们也可以将一个数据框架映射或合并到其他数据框架。

方法#1:使用映射函数

通过使用这个映射函数,我们可以在现有的数据框架中增加一个列。只要记住,没有键值会被重复,这将使数据不一致。

# Creating new dataframe
import 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 dictionary
new_data = { "Ram":"B.Com",
             "Mohan":"IAS",
             "Tina":"LLB",
             "Jeetu":"B.Tech",
             "Meera":"MBBS" }
  
# combine this new data with existing DataFrame
df["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

方法#2:使用替换功能

在这个方法中,我们可以通过一些定义的外部值来增加或替换数据框架的一些值。

# Creating new dataframe
import 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 dictionary
new_data = { "Ram":"Shyam",
             "Tina":"Riya",
             "Jeetu":"Jitender" }
  
print(df, end ="\n\n")
  
# combine this new data with existing DataFrame
df = 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

方法#3:使用更新函数

在这种方法中,我们可以通过使用索引值来更新数据框架的值,我们可以通过外部数据来改变列的值。

# Creating new dataframe
import 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 dictionary
new_data = { 0:"Shyam",
             2:"Riya",
             3:"Jitender" }
  
# combine this new data with existing DataFrame
df["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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程