![](/img/trans.png)
[英]Left join tables (1:n) using Pandas, keeping number of rows the same as left table
[英]How to do left join with larger table, keeping left tables size?
我有一個數據框1:
id val
a1 0
a1 5
a2 3
和數據框2:
id type1 type2
a1 main k
a2 secondary b
a3 old k
a4 deleted n
我想通過 id 將類型列加入 dataframe1 以獲得:
id val type1 type2
a1 0 main k
a1 5 main k
a2 3 secondary b
我怎么能那樣做? 如您所見,output 表的形狀與 dataframe1 相同嗎? 但是當我使用 pd.merge output 時更大
嘗試這個:
out = pd.merge(dataframe1, dataframe2, how='inner', on=['id'])
Output:
id val type1 type2
a1 0 main k
a1 5 main k
a2 3 secondary b
df = pd.merge(df1, df2)
或者
df = df1.merge(df2)
應該可以正常工作。
Output
id val type1 type2
0 a1 0 main k
1 a1 5 main k
2 a2 3 secondary b
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.