[英]How to replace pandas DataFrame with the values of another DataFrame?
[英]How to replace values in pandas dataframe with another dataframe
我有一个 dataframe (df1),我想用 df2 dataframe 中的weight
值替换symtom_1
、 symptom_2
...中的值。
第一个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
您可以使用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 1
repl_dict
{'itching': 1,
'skin_rash': 3,
'nodal_skin_eruptions': 4,
'continuous_sneezing': 4,
'shivering': 5}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.