使用字典重新映射 Pandas DataFrame 列中的值
在 Pandas 中处理数据时,我们对数据执行大量操作以获取所需形式的数据。这些操作之一可能是我们想要重新映射 DataFrame 中特定列的值。让我们讨论几种可以做到这一点的方法。
给定一个包含有关事件的数据的 Dataframe,将特定列的值重新映射到新值。
代码#1:我们可以使用DataFrame.replace()
函数来完成这个任务。让我们看看如何做到这一点。
# importing pandas as pd
import pandas as pd
# Creating the DataFrame
df = pd.DataFrame({'Date':['10/2/2011', '11/2/2011', '12/2/2011', '13/2/2011'],
'Event':['Music', 'Poetry', 'Theatre', 'Comedy'],
'Cost':[10000, 5000, 15000, 2000]})
# Print the dataframe
print(df)
输出 :
现在我们将通过各自的代码重新映射“事件”列的值。
# Create a dictionary using which we
# will remap the values
dict = {'Music' : 'M', 'Poetry' : 'P', 'Theatre' : 'T', 'Comedy' : 'C'}
# Print the dictionary
print(dict)
# Remap the values of the dataframe
df.replace({"Event": dict})
输出 :
代码#2:我们可以使用map()
函数来完成这个任务。
# importing pandas as pd
import pandas as pd
# Creating the DataFrame
df = pd.DataFrame({'Date':['10/2/2011', '11/2/2011', '12/2/2011', '13/2/2011'],
'Event':['Music', 'Poetry', 'Theatre', 'Comedy'],
'Cost':[10000, 5000, 15000, 2000]})
# Print the dataframe
print(df)
输出 :
现在我们将通过各自的代码重新映射“事件”列的值。
# Create a dictionary using which we
# will remap the values
dict = {'Music' : 'M', 'Poetry' : 'P', 'Theatre' : 'T', 'Comedy' : 'C'}
# Print the dictionary
print(dict)
# Remap the values of the dataframe
df['Event']= df['Event'].map(dict)
# Print the DataFrame after modification
print(df)
输出 :