我有一个dataframe (df1),我想替换symtom_1,symptom_2中的值。使用来自weight数据from的df2值。
第一个dataframe有4000行和17列。
df1
Disease Symptom_1 Symptom_2 Symptom_3
0 Fungal infection itching itching NaN
1 Fungal infection skin_rash itching NaN
2 Fungal infection itching itching NaN
3 Fungal infection itching itching skin_rash
4 vertigo itching skin_rash skin_rash
5 vertigo vomiting skin_rash vomiting
6 vertigo vomiting skin_rash vomiting
7 vertigo vomiting vomiting skin_rash
8 Fungal infection vomiting vomiting vomiting
9 Fungal infection skin_rash skin_rash vomiting
10 Fungal infection skin_rash vomiting itching第二个dataframe有133行。
df2
Symptom weight
0 itching 1
1 skin_rash 3
2 nodal_skin_eruptions 4
3 continuous_sneezing 4
4 shivering 5发布于 2021-03-16 23:18:38
您可以使用replace并传入字典。
repl_dict = df2.set_index('Symptom')['weight'].to_dict()
print(df1.replace(repl_dict))
Disease Symptom_1 Symptom_2 Symptom_3
0 Fungal infection 1 1 NaN
1 Fungal infection 3 1 NaN
2 Fungal infection 1 1 NaN
3 Fungal infection 1 1 3
4 vertigo 1 3 3
5 vertigo vomiting 3 vomiting
6 vertigo vomiting 3 vomiting
7 vertigo vomiting vomiting 3
8 Fungal infection vomiting vomiting vomiting
9 Fungal infection 3 3 vomiting
10 Fungal infection 3 vomiting 1repl_dict
{'itching': 1,
'skin_rash': 3,
'nodal_skin_eruptions': 4,
'continuous_sneezing': 4,
'shivering': 5}https://stackoverflow.com/questions/66664754
复制相似问题