我有 2 個(gè)數(shù)據(jù)框,一個(gè)是包含許多列的自由貿(mào)易協(xié)定數(shù)據(jù)集,列 c1 到 c91 表示特定自由貿(mào)易協(xié)定的不同國家部分,如下所示: FTA 數(shù)據(jù)FTA數(shù)據(jù)例如No Base_treaty entry_type c1 c2 c31 1 treaty Afghanistan India NA2 2 treaty Algeria Egypt Ghana3 3 treaty Algeria Angola Benin4 4 treaty Egypt Jordan Morocco5 5 treaty Albania Bulgaria NA6 6 treaty Albania Croatia NA另一個(gè)數(shù)據(jù)框包含兩個(gè)特定國家 i 和 j 之間的貿(mào)易數(shù)據(jù)。貿(mào)易數(shù)據(jù) inventor_ctry_i authority_ctry_j 1 Albania Bulgaria 2 Albania Croatia 3 Algeria Angola 4 Algeria Belgium 5 Algeria France 6 Andorra Turkey 7 Andorra United States 8 Anguilla Germany 9 Anguilla Switzerland 10 Anguilla United States期望的輸出:No Base_treaty entry_type matched ctry1 matched ctry2 3 3 treaty Algeria Angola 5 5 treaty Albania Bulgaria 6 6 treaty Albania Croatia 我希望能夠在貿(mào)易數(shù)據(jù)中找到國家 i 和 j,它們出現(xiàn)在 FTA 數(shù)據(jù)的 c1 到 c91 之間的同一行中。如果兩者都出現(xiàn)在特定行中,則從 FTA 中的行中提取這 2 個(gè)國家,保持編號(hào)、基本條約和條目類型列不變。任何幫助將不勝感激!
1 回答

守著一只汪
TA貢獻(xiàn)1872條經(jīng)驗(yàn) 獲得超4個(gè)贊
連接與您在上面看到的合并技術(shù)有點(diǎn)不同。通過合并,您可以期望生成的數(shù)據(jù)集將來自父數(shù)據(jù)集的行混合在一起,通?;谀承┕残?。根據(jù)合并的類型,您可能還會(huì)丟失在其他數(shù)據(jù)集中沒有匹配項(xiàng)的行。
通過串聯(lián),您的數(shù)據(jù)集只是沿著一個(gè)軸(行軸或列軸)拼接在一起。在視覺上,沿行沒有參數(shù)的串聯(lián)看起來像這樣:
concatenated = pandas.concat([df1, df2], axis=1)
請參考此鏈接以獲得更多代碼的理解和清除。
添加回答
舉報(bào)
0/150
提交
取消