欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

pandas中apply和transform方法的區(qū)別有哪些-創(chuàng)新互聯(lián)

這篇文章主要介紹了pandas中apply和transform方法的區(qū)別有哪些,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

成都創(chuàng)新互聯(lián)主營溫泉網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,app軟件開發(fā)公司,溫泉h5微信小程序搭建,溫泉網(wǎng)站營銷推廣歡迎溫泉等地區(qū)企業(yè)咨詢

1. apply與transform

首先講一下apply() 與transform()的相同點與不同點

相同點:

都能針對dataframe完成特征的計算,并且常常與groupby()方法一起使用。

不同點:

apply()里面可以跟自定義的函數(shù),包括簡單的求和函數(shù)以及復雜的特征間的差值函數(shù)等(注:apply不能直接使用agg()方法 / transform()中的python內(nèi)置函數(shù),例如sum、max、min、'count‘等方法)

transform() 里面不能跟自定義的特征交互函數(shù),因為transform是真針對每一元素(即每一列特征操作)進行計算,也就是說在使用 transform() 方法時,需要記得三點:

1、它只能對每一列進行計算,所以在groupby()之后,.transform()之前是要指定要操作的列,這點也與apply有很大的不同。

2、由于是只能對每一列計算,所以方法的通用性相比apply()就局限了很多,例如只能求列的大/最小/均值/方差/分箱等操作

3、transform還有什么用呢?最簡單的情況是試圖將函數(shù)的結果分配回原始的dataframe。也就是說返回的shape是(len(df),1)。注:如果與groupby()方法聯(lián)合使用,需要對值進行去重

2. 各方法耗時

分別計算在同樣簡單需求下各組合方法的計算時長

2.1 transform() 方法+自定義函數(shù)

pandas中apply和transform方法的區(qū)別有哪些

2.2 transform() 方法+python內(nèi)置方法

pandas中apply和transform方法的區(qū)別有哪些

2.3 apply() 方法+自定義函數(shù)

pandas中apply和transform方法的區(qū)別有哪些

2.4 agg() 方法+自定義函數(shù)

pandas中apply和transform方法的區(qū)別有哪些

2.5 agg() 方法+python內(nèi)置方法

pandas中apply和transform方法的區(qū)別有哪些

2.6 結論

agg()+python內(nèi)置方法的計算速度最快,其次是transform()+python內(nèi)置方法。而 transform() 方法+自定義函數(shù) 的組合方法最慢,需要避免使用!

而下面兩圖中紅框內(nèi)容可觀察發(fā)現(xiàn):python自帶的stats統(tǒng)計模塊在pandas結構中的計算也非常慢,也需要避免使用!

pandas中apply和transform方法的區(qū)別有哪些

pandas中apply和transform方法的區(qū)別有哪些

3. 實例分析

需求:計算每個用戶每天

某種行為消費次數(shù)、消費總額、消費均額、消費大額、消費最小額

在幾個終端支付、最常支付終端號、最常支付終端號的支付次數(shù)、最少支付終端號、最少支付終端號的支付次數(shù)

某種行為最常消費發(fā)生時間段、最常消費發(fā)生時間段的消費次數(shù)、最少消費發(fā)生時間段、最少消費發(fā)生時間段的消費次數(shù)

某種行為最早消費時間、最晚消費時間

原始數(shù)據(jù)信息:306626 x 9

pandas中apply和transform方法的區(qū)別有哪些

具體選擇哪種方法處理,根據(jù)實際情況確定,在面對復雜計算時,transform() 與apply()結合使用往往會有意想不到的效果!

需要注意的是,在與apply()一起使用時,transform需要進行去重操作,一般是通過指定一或多個列完成。

此外,匿名函數(shù)永遠不是一個很好的辦法,在進行簡單計算時,無論是使用transfrom、agg還是apply,都要盡可能使用自帶方法?。?!

4. 小技巧

在使用apply()方法處理大數(shù)據(jù)級時,可以考慮使用joblib中的多線程/多進程模塊構造相應函數(shù)執(zhí)行計算,以下分別是采用多進程和單進程的耗時時長。

可以看到,在260W的數(shù)據(jù)集上,多進程比單進程的計算速度可以提升約17%~61%  。

pandas中apply和transform方法的區(qū)別有哪些

感謝你能夠認真閱讀完這篇文章,希望小編分享的“pandas中apply和transform方法的區(qū)別有哪些”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關知識等著你來學習!

分享標題:pandas中apply和transform方法的區(qū)別有哪些-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://aaarwkj.com/article42/ppghc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、App開發(fā)、關鍵詞優(yōu)化定制網(wǎng)站、電子商務、網(wǎng)站營銷

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
打开网址国语一级黄色片| 午夜免费福利视频一区| 亚洲男人天堂在线视频| 熟妇激情欧美在线播放视频| 国产夫妻性生活国产视频| 亚洲午夜激情免费试看| 国产精品一区二区三区国产| 亚洲日本韩国一区二区| 中文字幕人妻熟人妻熟丝| 日韩不卡永久免费视频观看| 久久超碰一区二区三区| 精品国产乱码一区二区三区四区| 亚洲老司机深夜福利| 国产成人精品亚洲av无人区| 亚洲最大av在线精品国产| 色吊丝日韩在线观看| 国产原创av剧情在线播放| 丝袜美腿亚洲综合第一区| 欧美日本一区二区四区| 内射嫩国产欧美国产日韩欧美| 国产成人国产三级国产精品| 亚洲国产日韩欧美一级| 欧美精品一区二区毛卡片| 年轻的少妇一区二区三区| 午夜福利激情视频在线| 91中文字幕国产日韩| 91青青草原免费观看| 日韩精品在线观看天堂| 日韩国产推荐一区二区| 久久av免费一区二区观看| 欧美亚洲精品一区二区三区| 中文字幕一区二区三区久久| 中文字幕色视频在线观看| 在线成人免费日韩视频| 亚洲av毛片在线网站| 久久91亚洲精品久久91| 未满十八禁在线观看免费| 精品毛片av一区二区三区| 久久se精品一区精品二区国产 | 亚洲精品一品区二品区三区| 国产又粗又爽视频免费|