我有以下資料框
CUI CODE SAB TTY STR cui_name
C0000772 10028183 MDR LLT Multiple congenital anomalies Multiple congenital anomalies
C0000772 10002585 MDR LLT Anomalies congenital multiple Multiple congenital anomalies
C0000772 10002621 MDR LLT Anomaly congenital multiple (NOS) Multiple congenital anomalies
C0000772 10025533 MDR LLT Malformations multiple Multiple congenital anomalies
C0000772 10028182 MDR LLT Multiple congenital abnormalities Multiple congenital anomalies
C0000772 10028182 MDR PT Multiple congenital abnormalities Multiple congenital anomalies
C0000772 10028185 MDR LLT Multiple congenital malformations Multiple congenital anomalies
C0000772 D000015 MSH MH "Abnormalities, Multiple" Multiple congenital anomalies
C0001163 10000521 MDR LLT Acoustic nerve disorder NOS Vestibulocochlear Nerve Diseases
C0001163 10078794 MDR LLT Auditory nerve disorder Vestibulocochlear Nerve Diseases
C0001163 10078794 MDR PT Auditory nerve disorder Vestibulocochlear Nerve Diseases
C0001163 D000160 MSH MH Vestibulocochlear Nerve Diseases Vestibulocochlear Nerve Diseases
當列“SAB”值為“MSH”時,我想使用“CODE”列的值為每個 CUI id 添加一個附加列(“MSH_ID”)
預期的輸出是:
CUI CODE SAB TTY STR cui_name MSH_ID
C0000772 10028183 MDR LLT Multiple congenital anomalies Multiple congenital anomalies D000015
C0000772 10002585 MDR LLT Anomalies congenital multiple Multiple congenital anomalies D000015
C0000772 10002621 MDR LLT Anomaly congenital multiple (NOS) Multiple congenital anomalies D000015
C0000772 10025533 MDR LLT Malformations multiple Multiple congenital anomalies D000015
C0000772 10028182 MDR LLT Multiple congenital abnormalities Multiple congenital anomalies D000015
C0000772 10028182 MDR PT Multiple congenital abnormalities Multiple congenital anomalies D000015
C0000772 10028185 MDR LLT Multiple congenital malformations Multiple congenital anomalies D000015
C0001163 10000521 MDR LLT Acoustic nerve disorder NOS Vestibulocochlear Nerve Diseases D000160
C0001163 10078794 MDR LLT Auditory nerve disorder Vestibulocochlear Nerve Diseases D000160
C0001163 10078794 MDR PT Auditory nerve disorder Vestibulocochlear Nerve Diseases D000160
我嘗試了以下幾行,但如何也將值插入其他行(具有相同的 CUI id)
test['MSH_ID'] = test.loc[test['SAB'] == 'MSH', 'CODE']
非常感謝任何幫助!
uj5u.com熱心網友回復:
嘗試這個:
df['MSH_ID'] = df.loc[df['SAB'] == 'MSH', 'CODE'].values[0]
df = df[~(df['SAB']=='MSH')]
print(df)
CUI CODE SAB TTY STR cui_name MSH_ID
0 C0000772 10028183 MDR LLT Multiple congenital anomalies Multiple congenital anomalies D000015
1 C0000772 10002585 MDR LLT Anomalies congenital multiple Multiple congenital anomalies D000015
2 C0000772 10002621 MDR LLT Anomaly congenital multiple (NOS) Multiple congenital anomalies D000015
3 C0000772 10025533 MDR LLT Malformations multiple Multiple congenital anomalies D000015
4 C0000772 10028182 MDR LLT Multiple congenital abnormalities Multiple congenital anomalies D000015
5 C0000772 10028182 MDR PT Multiple congenital abnormalities Multiple congenital anomalies D000015
6 C0000772 10028185 MDR LLT Multiple congenital malformations Multiple congenital anomalies D000015
更新
一個以上的新任務CUI_Id:
df['MSH_ID'] = (
df['CUI']
.map(
df
.groupby('CUI')
.apply(lambda x: x.loc[x['SAB'] == 'MSH', 'CODE'].values[0])
)
)
CUI CODE SAB TTY STR cui_name new
0 C0000772 10028183 MDR LLT Multiple congenital anomalies Multiple congenital anomalies D000015
1 C0000772 10002585 MDR LLT Anomalies congenital multiple Multiple congenital anomalies D000015
2 C0000772 10002621 MDR LLT Anomaly congenital multiple (NOS) Multiple congenital anomalies D000015
3 C0000772 10025533 MDR LLT Malformations multiple Multiple congenital anomalies D000015
4 C0000772 10028182 MDR LLT Multiple congenital abnormalities Multiple congenital anomalies D000015
5 C0000772 10028182 MDR PT Multiple congenital abnormalities Multiple congenital anomalies D000015
6 C0000772 10028185 MDR LLT Multiple congenital malformations Multiple congenital anomalies D000015
7 C0000772 D000015 MSH MH "Abnormalities, Multiple" Multiple congenital anomalies D000015
8 C0001163 10000521 MDR LLT Acoustic nerve disorder NOS Vestibulocochlear Nerve Diseases D000160
9 C0001163 10078794 MDR LLT Auditory nerve disorder Vestibulocochlear Nerve Diseases D000160
10 C0001163 10078794 MDR PT Auditory nerve disorder Vestibulocochlear Nerve Diseases D000160
11 C0001163 D000160 MSH MH Vestibulocochlear Nerve Diseases Vestibulocochlear Nerve Diseases D000160
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/526498.html
標籤:Python数据框
