国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

Pandas 合并多個(gè)Dataframe(merge,concat)的方法

2020-02-15 21:42:13
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

在數(shù)據(jù)處理的時(shí)候,尤其在搞大數(shù)據(jù)競(jìng)賽的時(shí)候經(jīng)常會(huì)遇到一個(gè)問(wèn)題就是,多個(gè)表單的合并問(wèn)題,比如一個(gè)表單有user_id和age這兩個(gè)字段,另一個(gè)表單有user_id和sex這兩個(gè)字段,要把這兩個(gè)表合并成只有user_id、age、sex三個(gè)字段的表怎么辦的,普通的拼接是做不到的,因?yàn)閡ser_id每一行之間不是對(duì)應(yīng)的,像拼積木似的橫向拼接肯定是不行的。

pandas中有個(gè)merge函數(shù)可以做到這個(gè)實(shí)用的功能,merge這個(gè)詞會(huì)點(diǎn)SQL語(yǔ)言的應(yīng)該都不陌生。

下面說(shuō)說(shuō)merge函數(shù)怎么用:

df = pd.merge(df1, df2, how='left', on='user_id') 

用法很簡(jiǎn)單,說(shuō)一下后兩個(gè)參數(shù)就可以了,how=""參數(shù)表示以哪個(gè)表的key為準(zhǔn),上面的how="left"表示以表df1為準(zhǔn),而key也就是on=""的參數(shù)

how="left"就是說(shuō),保留user_id字段的全部信息,不增加也不減少,但是拼接的時(shí)候只把df2表中的與df1中user_id字段交集的部分合并上就可以了,如果df2中出現(xiàn)了某個(gè)user_id在df1中沒(méi)有出現(xiàn),就拋棄掉這個(gè)樣本不作處理。

如果要進(jìn)行多key合并:

df = pd.merge(df1, df2, how='left', on=['user_id','sku_id']) 

但是如果想僅進(jìn)行簡(jiǎn)單的“拼接”而不是合并呢,要使用concat函數(shù):

df = pd.concat( [df_user, dummies_sex, dummies_age, dummies_level], axis=1 ) 

這樣可以保留這些表單的全部信息,參數(shù)axis=1表示列拼接,axis=0表示行拼接。

要保證背個(gè)表單的行數(shù)是相同的,并且每一行對(duì)應(yīng)的key也是相同的,列拼接才變得有意義

以上這篇Pandas 合并多個(gè)Dataframe(merge,concat)的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林站長(zhǎng)站。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 拉孜县| 大厂| 新疆| 鸡东县| 依安县| 额尔古纳市| 白朗县| 广灵县| 浠水县| 寻甸| 武清区| 剑河县| 阿克| 普安县| 比如县| 泸水县| 浦北县| 察隅县| 弥渡县| 东兰县| 渑池县| 望奎县| 玉溪市| 华安县| 定结县| 元阳县| 景谷| 怀柔区| 栖霞市| 仪陇县| 南皮县| 文水县| 沈阳市| 岱山县| 方正县| 丰顺县| 连平县| 澄城县| 大连市| 红桥区| 望都县|