![](/img/trans.png)
[英]how to copy values from one column into another column based on conditions of two different columns in pandas?
[英]Pandas : change values in column based on a mapping of two different columns
我有這個數據框:
id result.value.text result.value.labels result.id result.from_id result.to_id
0 793 skin melanoma indication 5jSiC_n3IM NaN NaN
1 793 proteinase protein Lso-iCCHar NaN NaN
2 793 plasminogen activator protein _17D_kE5zf NaN NaN
3 793 NaN NaN NaN 5jSiC_n3IM Lso-iCCHar
4 793 NaN NaN NaN 5jSiC_n3IM _17D_kE5zf
我想更改result.from_id
和result.to_id
列的值,而不是使用 result.id 列的值, result.value.text
用result.id
列的相應值替換它們。
想要的輸出
id result.value.text result.value.labels result.from_id result.to_id
0 793 skin melanoma indication NaN NaN
1 793 proteinase protein NaN NaN
2 793 plasminogen activator protein NaN NaN
3 793 NaN NaN skin melanoma proteinase
4 793 NaN NaN skin melanoma plasminogen activator
有人可以幫忙嗎?
創建字典,刪除每個result.id, result.value.text
中的缺失行,然后映射兩列:
d = df.dropna(subset=['result.id','result.value.text']).set_index('result.id')['result.value.text'].to_dict()
cols = ['result.from_id','result.to_id']
df[cols] = df[cols].apply(lambda x: x.map(d))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.