真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Apply、Map和Aplymap三者的區(qū)別是什么

Apply、Map和Aplymap三者的區(qū)別是什么,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)專注于當(dāng)陽網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供當(dāng)陽營銷型網(wǎng)站建設(shè),當(dāng)陽網(wǎng)站制作、當(dāng)陽網(wǎng)頁設(shè)計、當(dāng)陽網(wǎng)站官網(wǎng)定制、微信小程序開發(fā)服務(wù),打造當(dāng)陽網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供當(dāng)陽網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

首先,來個總結(jié)

  • apply:應(yīng)用在DataFrame的行或列中,也可以應(yīng)用到單獨一個Series的每個元素中

  • map:應(yīng)用在單獨一個Series的每個元素中

  • applymap:應(yīng)用在DataFrame的每個元素中

apply

先從apply開始,當(dāng)然最權(quán)威的說明還是要看官方文檔:

apply是沿DataFrame的軸應(yīng)用功能,傳遞給函數(shù)的對象是Series對象,其索引為DataFrame的索引(axis =  0'')或DataFrame的列(axis = 1'')

當(dāng)然比較常用的還是DataFrame.apply(),下邊我們通過例子來說明一下幫助理解.

首先有一個表:

Apply、Map和Aplymap三者的區(qū)別是什么

apply應(yīng)用到DataFrame中

如果我們求一下每一列或者每一列的極差,注意axis參數(shù)的設(shè)置,一般默認為0,即求每一列的極值

Apply、Map和Aplymap三者的區(qū)別是什么

apply的參數(shù)可以直接接收現(xiàn)成的函數(shù),也可以接收自定義函數(shù),比如自定義的匿名函數(shù):

Apply、Map和Aplymap三者的區(qū)別是什么

通過對軸信息的設(shè)置,也可以求每一行的極差:

Apply、Map和Aplymap三者的區(qū)別是什么

需要注意的是結(jié)果的索引,能夠很明顯的告訴大家現(xiàn)在求的是行極差還是列極差,如果是行極差,索引是行標(biāo)簽,如果是列極差,索引是列名。

另外,對整個DataFrame運用apply的時候,要保證所有的字段都是符合作為參數(shù)的函數(shù)要求才可以,比如在列子中求極值得保證所有字段都是數(shù)值型才行,如果整個DataFrame不能滿足要求,可以把符合要求的字段切出來再應(yīng)用apply。

如果有需要,也可以把求的結(jié)果添加到原表當(dāng)中。

apply應(yīng)用到Series中

如這個例子,將A列的所有元素轉(zhuǎn)換數(shù)據(jù)類型,從整型轉(zhuǎn)換成浮點型:

Apply、Map和Aplymap三者的區(qū)別是什么

總結(jié)一下,apply運用到整個DataFrame中可以執(zhí)行整列或者整行的運算,運用到Series中,執(zhí)行的是對每個元素的運算。

這個運算,map也可以實現(xiàn)。

map

首先,還是看下官方文檔是怎么說的:

  • 根據(jù)輸入對應(yīng)關(guān)系映射Series的值。

  • 用于將Series中的每個值替換為另一個值,該值可以從函數(shù)dict或Series派生。

官方指定,map是應(yīng)用于Seriesd 的,參數(shù)可以是函數(shù)也可以字典。

首先,還是要有一個表:

Apply、Map和Aplymap三者的區(qū)別是什么

現(xiàn)在需要將性別轉(zhuǎn)換成0和1,女為0,男為1,這個時候千萬不要寫循環(huán)啊,map()可以輕松實現(xiàn),先來試試函數(shù)的形式:

def gender(x): G = 1 if x == "男" else 0 return G

Apply、Map和Aplymap三者的區(qū)別是什么

map的參數(shù)除了可以是參數(shù),也可以是字典,這和apply對參數(shù)的要求不同:

Apply、Map和Aplymap三者的區(qū)別是什么

applymap

最后來看一下applymap,還是先搬上官方文檔:

  • 將函數(shù)應(yīng)用于元素的數(shù)據(jù)框。

  • 此方法應(yīng)用一個函數(shù),該函數(shù)接受并返回一個標(biāo)量到DataFrame的每個元素。

簡單說,applymap是把函數(shù)應(yīng)用到DataFrame中的每個元素上的,要和apply對整列或者整行進行的操作區(qū)分開啊,apply想要直接對每個元素進行操作,得單獨提取出Series才可以實現(xiàn),不能直接再整個DataFrame上執(zhí)行。下邊來看個例子。

還是開頭的那個表:

Apply、Map和Aplymap三者的區(qū)別是什么

現(xiàn)在要把每個元素的數(shù)據(jù)類型都轉(zhuǎn)換成浮點型,applymap()就派上用場了:

Apply、Map和Aplymap三者的區(qū)別是什么

最后再總結(jié)一下:

apply:

  • 既可以用在DataFrame,也可以用到單獨的Series中

  • 運用到DataFrame時,是用到了整行或者整列上,不是逐一運用到每個元素上

  • 運用到Series時,作用到每個元素上

  • 第一個參數(shù)只接收python原生函數(shù)或者numpy中的函數(shù)

map

  • 只能運用到Series的每個元素上

  • 參數(shù)可以是函數(shù)也可以是字典,還可以是序列

applymap

  • 只能應(yīng)用在DataFrame中,并且是作用在DataFrame的每個元素中

  • 參數(shù)只接收可調(diào)用的函數(shù)

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。


網(wǎng)頁題目:Apply、Map和Aplymap三者的區(qū)別是什么
URL鏈接:http://weahome.cn/article/jheois.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部