我目前有2个csv文件。我正在执行的CSV文件有一些值作为状态代码,有些值作为状态名称,我想用状态名称替换状态代码。
CSV 1
state
Assam
Goa
06
Kerala
12
CSV 2
S.No state_name state_code
1 Karnataka 06
2 Mizoram 12
3 Meghalaya 15
CSV 1:中需要输出
state
Assam
Goa
Karnataka
Kerala
Mizoram
到目前为止,我已经尝试过:
df= pd.read_csv("csv1.csv")
data1 = pd.read_csv("csv1.csv")
for index, row in df.iterrows():
for index_config, row_config in data1.iterrows():
if row['state'] == row_config['']:
df['state'] = row_config['State']
我如何从CSV 2映射state_name来代替CSV 1 状态列中的状态代码值
让我们首先创建一个映射dictionary
,然后对第一个数据帧(df1
(使用replace
方法:
#df1 is for CSV1 and df2 is for CSV2 file
mapping = dict(zip(df2['state_code'], df2['state_name']))
#print(mapping)
#{'06': 'Karnataka', '12': 'Mizoram', '15': 'Meghalaya'}
df1['state'] = df1.state.replace(mapping)
输出:
state
0 Assam
1 Goa
2 Karnataka
3 Kerala
4 Mizoram