使用pandas對(duì)兩個(gè)dataframe進(jìn)行join的實(shí)例
需求:
兩個(gè)文件,一個(gè)文件為統(tǒng)計(jì)報(bào)表,里面含有手機(jī)號(hào),另一個(gè)文件為手機(jī)號(hào)段歸屬地,含有手機(jī)號(hào)碼前七位對(duì)應(yīng)的地區(qū)。需要對(duì)統(tǒng)計(jì)報(bào)表進(jìn)行處理,將手機(jī)號(hào)所在的歸屬地加入到統(tǒng)計(jì)報(bào)表中,使用pandas提供的join功能來(lái)實(shí)現(xiàn),代碼如下:
#coding=utf-8
from pandas import Series,DataFrame
import pandas as pd
#reader1 = pd.read_csv('Dm_Mobile.txt',iterator=True,encoding="gb2312")
#df1 = reader1.get_chunk(10)
#reader2 = pd.read_csv('201604.csv',iterator=True,encoding="gb2312")
#df2 = reader.get_chunk(10)
#讀取兩個(gè)csv文件,生成dataframe
df1 = pd.read_csv('Dm_Mobile.csv',encoding="gb2312")
df2 = pd.read_csv('201604.csv',encoding="gb2312")
#截取手機(jī)號(hào)前七位,作為新列添加到dataframe
df2['p7s'] = Series([str(x)[:7] for x in Series(df2[u'手機(jī)號(hào)'])])
df2['p7i'] = df2['p7s'].astype("int64")
#在兩個(gè)dataframe的手機(jī)前七位列上創(chuàng)建索引
index_df1 = df1.set_index('MobileNumber')
index_df2 = df2.set_index(['p7i'])
#以手機(jī)號(hào)前七位列為join列,對(duì)兩個(gè)dataframe進(jìn)行join
result = pd.concat([index_df1, index_df2], axis=1, join='inner')
#選取需要顯示的列,重新生成result
result = result.reindex(columns=[u'積分商城訂單號(hào)', u'手機(jī)號(hào)',u'產(chǎn)品編碼',u'商品名稱(chēng)',u'商品價(jià)格',u'數(shù)量',u'虛擬碼',u'消費(fèi)時(shí)間',u'時(shí)間',u'兌換渠道商',u'MobileArea'])
#寫(xiě)入到excel文件中
writer = pd.ExcelWriter('pandas_simple.xlsx')
result.to_excel(writer, sheet_name=u'設(shè)計(jì)院',index=False)
writer.save()
以上這篇使用pandas對(duì)兩個(gè)dataframe進(jìn)行join的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
推薦8款常用的Python GUI圖形界面開(kāi)發(fā)框架
這篇文章主要介紹了推薦8款常用的Python GUI圖形界面開(kāi)發(fā)框架,需要的朋友可以參考下2020-02-02
opencv實(shí)現(xiàn)圖像旋轉(zhuǎn)效果
這篇文章主要為大家詳細(xì)介紹了opencv實(shí)現(xiàn)圖像旋轉(zhuǎn)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-03-03
Pandas查詢(xún)數(shù)據(jù)df.query的使用
本文主要介紹了Pandas查詢(xún)數(shù)據(jù)df.query的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
python命令行執(zhí)行腳本找不到模塊ModuleNotFoundError問(wèn)題
這篇文章主要介紹了python命令行執(zhí)行腳本找不到模塊ModuleNotFoundError問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06
python中resample函數(shù)實(shí)現(xiàn)重采樣和降采樣代碼
今天小編就為大家分享一篇python中resample函數(shù)實(shí)現(xiàn)重采樣和降采樣代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02

