首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用另一个数据替换熊猫数据中的值

如何用另一个数据替换熊猫数据中的值
EN

Stack Overflow用户
提问于 2021-03-16 23:09:48
回答 1查看 87关注 0票数 0

我有一个dataframe (df1),我想替换symtom_1symptom_2中的值。使用来自weight数据from的df2值。

第一个dataframe有4000行和17列。

代码语言:javascript
复制
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行。

代码语言:javascript
复制
df2

    Symptom              weight
0   itching                 1
1   skin_rash               3
2   nodal_skin_eruptions    4
3   continuous_sneezing     4
4   shivering               5
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-16 23:18:38

您可以使用replace并传入字典。

代码语言:javascript
复制
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

代码语言:javascript
复制
repl_dict

{'itching': 1,
 'skin_rash': 3,
 'nodal_skin_eruptions': 4,
 'continuous_sneezing': 4,
 'shivering': 5}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66664754

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档