我試圖只為兩個不同資料框之間的公共值獲取列 A 的值。
資料框 1:

資料框 2:

最終資料框:

我嘗試了下面的代碼:如果 X_2 中沒有 null 或字串以及只有一個值要分配,它就可以作業。但是當我們有兩個來自 x_2 的值時,它就不起作用了。
df2['X_2'] = np.nan
x_list = df1['x_1'].tolist()
for index in range(len(df2)):
item = df2['A_1'][index]
if item in x_list:
value = df1.loc[df1['x_1)']== item,'X_2'].item()
df2['X_2'][index] = value
else:
pass
uj5u.com熱心網友回復:
嘗試這個:
# Optional
df1 = df1.replace(['No available', 'null'], np.nan)
df2 = df2.set_index('A_1').assign(X_2=df1.groupby('X_1')['X_2'].agg(list).explode().dropna().groupby(level=0).agg(list).rename().rename_axis(None)).reset_index()
輸出:
>>> df2
A_1 X_2
0 99192401 [80306228, 12345678]
1 99192627 [30306711]
2 99192651 [10306222]
3 99192628 NaN
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/449611.html
