我有一個數據幀,看起來像這樣:在熊貓中查找等值的行嗎?
df = pd.DataFrame([
{'code': '0101010C0AAAAAA', 'chemical': '0101010C0', 'is_generic': True, 'format': 'AAAA'},
{'code': '0101010C0BBAAAA', 'chemical': '0101010C0', 'is_generic': False, 'format': 'AAAA'},
{'code': '0101010F0AAAUAU', 'chemical': '0101010F0', 'is_generic': True, 'format': 'AUAU'},
{'code': '0101010F0BCAAAU', 'chemical': '0101010F0', 'is_generic': False, 'format': 'AAAU'},
{'code': '0101010G0AAABAB', 'chemical': '0101010G0', 'is_generic': False, 'format': 'ABAB'}
])
code chemical is_generic format
0 0101010C0AAAAAA 0101010C0 True AAAA
1 0101010C0BBAAAA 0101010C0 False AAAA
2 0101010F0AAAUAU 0101010F0 True AUAU
3 0101010F0BCAAAU 0101010F0 False AAAU
4 0101010G0AAABAB 0101010G0 False ABAB
我想創建一個新的數據框與一排,其中is_generic
是假的每個代碼。然後,我想增加一列,每一個代碼,是具有相同化學和格式的代碼,但它is_generic爲真:
code generic_equiv
0101010C0BBAAAA 0101010C0AAAAAA
0101010F0BCAAAU 0101010F0AAAUAU
0101010G0AAABAB None
我知道如何與一排各獲得數據幀代碼中is_generic
爲False:
df1 = df[df['is_generic'] == True]
我想我想做一個條件合併與DF,但如何做到這一點?
有沒有保證是最多一個通用=真行匹配任何特定的通用= False行?或者對於一個非泛型可能會有多種泛型?如果可能有多個,輸出結果如何? –
@JohnZwinck謝謝!是的,最多隻有一個。 – Richard