pythonapply和map有什么區(qū)別

這篇文章將為大家詳細(xì)講解python apply和map有什么區(qū)別,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

10年積累的成都網(wǎng)站建設(shè)、成都做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有方山免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

在Python中如果想要對(duì)數(shù)據(jù)使用函數(shù),可以借助apply()、applymap()、map()來(lái)應(yīng)用函數(shù),括號(hào)里面可以是直接函數(shù)式,或者自定義函數(shù)(def)或者匿名函數(shù)(lambad)。

import pandas as pd
import numpy as np
from pandas import DataFrame
from pandas import Series
df1= DataFrame({
                "sales1":[-1,2,3],
                "sales2":[3,-5,7],
               })
df1

python apply和map有什么區(qū)別

1、當(dāng)我們要對(duì)數(shù)據(jù)框(DataFrame)的數(shù)據(jù)進(jìn)行按行或按列操作時(shí)用apply()。

df1.apply(lambda x :x.max()-x.min(),axis=1)
#axis=1,表示按行對(duì)數(shù)據(jù)進(jìn)行操作
#從下面的結(jié)果可以看出,我們使用了apply函數(shù)之后,系統(tǒng)自動(dòng)按行找最大值和最小值計(jì)算,每一行輸出一個(gè)值

0    4

1    7

2    4

dtype: int64

df1.apply(lambda x :x.max()-x.min(),axis=0)
#默認(rèn)參數(shù)axis=0,表示按列對(duì)數(shù)據(jù)進(jìn)行操作
#從下面的結(jié)果可以看出,我們使用了apply函數(shù)之后,系統(tǒng)自動(dòng)按列找最大值和最小值計(jì)算,每一列輸出一個(gè)值

sales1     4

sales2    12

dtype: int64

2、當(dāng)我們要對(duì)數(shù)據(jù)框(DataFrame)的每一個(gè)數(shù)據(jù)進(jìn)行操作時(shí)用applymap(),返回結(jié)果是DataFrame格式。

df1.applymap(lambda x : 1 if x>0 else 0)
#從下面的結(jié)果可以看出,我們使用了applymap函數(shù)之后,
#系統(tǒng)自動(dòng)對(duì)每一個(gè)數(shù)據(jù)進(jìn)行判斷,判斷之后輸出結(jié)果

python apply和map有什么區(qū)別

3、當(dāng)我們要對(duì)Series的每一個(gè)數(shù)據(jù)進(jìn)行操作時(shí)用map()。

df1.sales1.map(lambda x : 1 if x>0 else 0)
#df1.sales1就是一個(gè)Series

0    0

1    1

2    1

Name: sales1, dtype: int64

4、總結(jié):要對(duì)數(shù)據(jù)進(jìn)行應(yīng)用函數(shù)時(shí),先看數(shù)據(jù)結(jié)構(gòu)是DataFrame還是Series,Seriesj結(jié)構(gòu)直接用map(),DataFrame結(jié)構(gòu)的話再看是要按行還是按列進(jìn)行操作來(lái)選擇對(duì)應(yīng)的函數(shù)即可。

關(guān)于python apply和map有什么區(qū)別就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

文章名稱:pythonapply和map有什么區(qū)別
文章來(lái)源:http://muchs.cn/article0/jpiioo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、小程序開發(fā)、靜態(tài)網(wǎng)站、關(guān)鍵詞優(yōu)化、建站公司、軟件開發(fā)

廣告

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

商城網(wǎng)站建設(shè)