成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Numpy中的通用函數(shù)和聚合

xorpay / 3095人閱讀

摘要:概述在中存在著通用函數(shù)和聚合去對(duì)數(shù)據(jù)進(jìn)行處理通過(guò)向量進(jìn)行對(duì)數(shù)據(jù)數(shù)組的計(jì)算而這些向量主要依靠一些通用函數(shù)而聚合是對(duì)面對(duì)大量數(shù)據(jù)時(shí)獲取描述性統(tǒng)計(jì)信息的方法。三角函數(shù)提供了大量好用的通用函數(shù),其中對(duì)于數(shù)據(jù)科學(xué)家最有用的就是三角函數(shù)。

概述

在Numpy中存在著通用函數(shù)和聚合去對(duì)數(shù)據(jù)進(jìn)行處理,numpy通過(guò)向量進(jìn)行對(duì)數(shù)據(jù)數(shù)組的計(jì)算,而這些向量主要依靠一些通用函數(shù),而聚合是numpy對(duì)面對(duì)大量數(shù)據(jù)時(shí)獲取描述性統(tǒng)計(jì)信息的方法。

numpy的通用函數(shù)

1、為什么用numpy的通用函數(shù)而不用Python的循環(huán)做逐個(gè)元素的計(jì)算

NumPy 提供了一個(gè)簡(jiǎn)單靈活的接口來(lái)優(yōu)化數(shù)據(jù)數(shù)組的計(jì)算,使得numpy成為python數(shù)據(jù)科學(xué)中極其重要的一部分。Numpy主要是通過(guò)向量進(jìn)行操作的,而這些操作主要依靠他的一些通用函數(shù)實(shí)現(xiàn),接下來(lái),我們就去學(xué)習(xí)這些通用函數(shù),以方便我們提高元素重復(fù)計(jì)算的效率。

學(xué)習(xí)numpy通用函數(shù),我們首先舉個(gè)例子:

假設(shè)我們想要計(jì)算一個(gè)數(shù)組元素的倒數(shù):

方法1:用循環(huán)迭代執(zhí)行

方法2:用Numpy的通用函數(shù)進(jìn)行計(jì)算

1.1用Python的循環(huán)語(yǔ)句實(shí)現(xiàn)

1.2 用numpy的通用函數(shù)實(shí)現(xiàn)

1.3對(duì)比一下兩者運(yùn)行的時(shí)間

這時(shí)候就會(huì)發(fā)現(xiàn)循環(huán)的時(shí)間復(fù)雜度很高,直接用數(shù)組通用函數(shù)進(jìn)行計(jì)算,速度是python代碼循環(huán)進(jìn)行計(jì)算的10倍左右。

2、常用通用函數(shù)

2.1數(shù)組的運(yùn)算

NumPy 通用函數(shù)的使用方式非常自然,因?yàn)樗玫搅?Python 原生的算術(shù)運(yùn)算符,標(biāo)準(zhǔn)的 加、減、乘、除都可以使用:

加法,直接用+號(hào)或者使用np.add()

除法,使用/號(hào)或者np.divide()

平方,使用**或者np.power()

乘法,使用*號(hào)或者np.multiply()

剩余的通用函數(shù)操作:

運(yùn)算符

對(duì)應(yīng)的通用函數(shù)

描述

+

Np.add

加法運(yùn)算(即 1 + 1 = 2)

-

Np.subtract

減法運(yùn)算(即 3 - 2 = 1)

-

Np.negative

負(fù)數(shù)運(yùn)算(即 -2)

*

Np.multiply

乘法運(yùn)算(即 2 * 3 = 6)

/

Np.divide

除法運(yùn)算(即 3 / 2 = 1.5)

//

Np.floor_divide

地板除法運(yùn)算(floor division,即3//2 = 1)

**

Np.power

指數(shù)運(yùn)算(即 2 ** 3 = 8)

%

Np.mod

模 / 余數(shù)(即 9 % 4 = 1)

2.2絕對(duì)值

正如NumPy 能理解 Python 內(nèi)置的運(yùn)算操作, NumPy 也可以理解 Python 內(nèi)置的絕對(duì)值 函數(shù):

Numpy的計(jì)算速度還是快一些的。

2.3三角函數(shù)

NumPy 提供了大量好用的通用函數(shù),其中對(duì)于數(shù)據(jù)科學(xué)家最有用的就是三角函數(shù)。首先定義一個(gè)角度數(shù)組:

然后進(jìn)行三角函數(shù)運(yùn)算

當(dāng)然反三角函數(shù)也是支持的

2.4指數(shù)和對(duì)數(shù)

Numpy中也提供了對(duì)指數(shù)和對(duì)數(shù)進(jìn)行運(yùn)算的方法

指數(shù)運(yùn)算

以e為底的對(duì)數(shù)運(yùn)算

以2為底的對(duì)數(shù)運(yùn)算

以10為底的對(duì)數(shù)運(yùn)算

通用函數(shù)特性

1.指定輸出

在進(jìn)行大量運(yùn)算時(shí),有時(shí)候指定一個(gè)用于存放運(yùn)算結(jié)果的數(shù)組是非常有用的。不同于創(chuàng)建 臨時(shí)數(shù)組,你可以用這個(gè)特性將計(jì)算結(jié)果直接寫入到你期望的存儲(chǔ)位置。所有的通用函數(shù) 都可以通過(guò)out參數(shù)來(lái)指定計(jì)算結(jié)果的存放位置:

這個(gè)特性也可以被用作數(shù)組視圖,例如可以將計(jì)算結(jié)果寫入指定數(shù)組的每隔一個(gè)元素的位置:

2.聚合

對(duì)通用函數(shù)調(diào)用reduce方法會(huì)返回?cái)?shù)組中所有元素的和:

對(duì)內(nèi)積調(diào)用reduce也同樣會(huì)返回?cái)?shù)組的內(nèi)積

對(duì)通用函數(shù)調(diào)用accumulate,會(huì)返回每次計(jì)算的結(jié)果

3.外積

任何通用函數(shù)都可以用 outer 方法獲得兩個(gè)不同輸入數(shù)組所有元素對(duì)的函數(shù)運(yùn)算結(jié)果。這意味著你可以用一行代碼實(shí)現(xiàn)一個(gè)乘法表:

三、聚合:最大值、最小值和其他值

當(dāng)我們面對(duì)大量的數(shù)據(jù)時(shí),首先想到的就是去獲取他們的一些描述性統(tǒng)計(jì)信息,比如中值、中位數(shù)、均值、最大值、最小值、和、乘積等。Numpy內(nèi)置的一些方法,在求取這些信息時(shí),會(huì)非常的便利和高效。下面我們就去介紹一些比較常用的:

1.數(shù)組值求和

由于Numpy的sum函數(shù)是在編譯的過(guò)程中進(jìn)行計(jì)算的,因此速度會(huì)比python的sum更快一些。

2、最大值和最小值

同樣,Python也有內(nèi)置的min函數(shù)和max函數(shù),分別被用于獲取給定數(shù)組的最小值和最大值:

對(duì)于 min、 max、 sum 和其他 NumPy 聚合,一種更簡(jiǎn)潔的語(yǔ)法形式是數(shù)組對(duì)象直接調(diào)用這些方法:

3、多維度聚合

一種常用的聚合操作是沿著一行或者一列聚合。例如,有著一個(gè)二維數(shù)組,我們想要統(tǒng)計(jì)他的一些聚合信息:

默認(rèn)情況下,每一個(gè)Numpy聚合函數(shù)都會(huì)返回對(duì)整個(gè)數(shù)組的聚合結(jié)果:

聚合函數(shù)還有一個(gè)參數(shù),用于指定沿著哪個(gè)軸的方向進(jìn)行聚合。例如,可以通過(guò)指定 axis=0 找到每一列的最小值:

找到行的最大值類似的操作,讓axis = 1 就可以實(shí)現(xiàn)

axis 關(guān)鍵字指定的是數(shù)組將會(huì)被折疊的維度,而不是將要返回的維度。因此指定 axis=0 意味著第一個(gè)軸將要被折疊——對(duì)于二維數(shù)組,這意味著每一列的值都將被聚合。

4、其他聚合函數(shù)

Python中其他可用的聚合函數(shù):

函數(shù)名稱

NaN安全版本

描述

np.sum

np.nansum

計(jì)算元素的和

np.prod

np.nanprod

計(jì)算元素的積

np.mean

np.nanmean

計(jì)算元素的平均值

np.std

np.nanstd

計(jì)算元素的標(biāo)準(zhǔn)差

np.var

np.nanvar

計(jì)算元素的方差

np.min

np.nanmin

找出最小值

np.max

np.nanmax

找出最大值

np.argmin

np.nanargmin

找出最小值的索引

np.argmax

np.nanargmax

找出最大值的索引

np.median

np.nanmedian

計(jì)算元素的中位數(shù)

np.percentile

np.nanpercentile

計(jì)算基于元素排序的統(tǒng)計(jì)值

np.any

N/A

驗(yàn)證任何一個(gè)元素是否為真

np.all

N/A

驗(yàn)證所有元素是否為真

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/43606.html

相關(guān)文章

  • 【數(shù)據(jù)科學(xué)系統(tǒng)學(xué)習(xí)】Python # 數(shù)據(jù)分析基本操作[四] 數(shù)據(jù)規(guī)整化數(shù)據(jù)聚合與分組運(yùn)算

    摘要:數(shù)據(jù)規(guī)整化清理轉(zhuǎn)換合并重塑數(shù)據(jù)聚合與分組運(yùn)算數(shù)據(jù)規(guī)整化清理轉(zhuǎn)換合并重塑合并數(shù)據(jù)集可根據(jù)一個(gè)或多個(gè)鍵將不同中的行鏈接起來(lái)。函數(shù)根據(jù)樣本分位數(shù)對(duì)數(shù)據(jù)進(jìn)行面元?jiǎng)澐?。字典或,給出待分組軸上的值與分組名之間的對(duì)應(yīng)關(guān)系。 本篇內(nèi)容為整理《利用Python進(jìn)行數(shù)據(jù)分析》,博主使用代碼為 Python3,部分內(nèi)容和書本有出入。 在前幾篇中我們介紹了 NumPy、pandas、matplotlib 三個(gè)...

    The question 評(píng)論0 收藏0
  • Python數(shù)據(jù)分析學(xué)習(xí)筆記之Pandas入門

    摘要:是一個(gè)數(shù)據(jù)分析的開源庫(kù)。與表格或關(guān)系數(shù)據(jù)庫(kù)中的表非常神似。注意帶有一個(gè)索引,類似于關(guān)系數(shù)據(jù)庫(kù)中的主鍵。的統(tǒng)計(jì)函數(shù)分組與聚合通過(guò)方法,可以對(duì)數(shù)據(jù)組施加一系列的函數(shù)。函數(shù)的作用是串聯(lián),追加數(shù)據(jù)行使用函數(shù)。 pandas(Python data analysis)是一個(gè)Python數(shù)據(jù)分析的開源庫(kù)。pandas兩種數(shù)據(jù)結(jié)構(gòu):DataFrame和Series 安裝:pandas依賴于NumPy...

    zqhxuyuan 評(píng)論0 收藏0
  • 一文帶你斬殺Python之Numpy??Pandas全部操作【全網(wǎng)最詳細(xì)】???

    目錄Numpy簡(jiǎn)介Numpy操作集合1、不同維度數(shù)據(jù)的表示1.1 一維數(shù)據(jù)的表示1.2 二維數(shù)據(jù)的表示1.3 三維數(shù)據(jù)的表示2、 為什么要使用Numpy2.1、Numpy的ndarray具有廣播功能2.2 Numpy數(shù)組的性能比Python原生數(shù)據(jù)類型高3 ndarray的屬性和基本操作3.1 ndarray的基本屬性3.2 ndarray元素類型3.3 創(chuàng)建ndarray的方式3.4 ndarr...

    asoren 評(píng)論0 收藏0
  • Python Pandas聚合函數(shù)的應(yīng)用示例

      Python Pandas作為常見(jiàn)的應(yīng)用Python的一門工具,常常是作為聚合函數(shù)去進(jìn)行使用的,那么,我們應(yīng)該怎么去使用這類聚合函數(shù)呢?下面就具體的一類應(yīng)用實(shí)例,下面給大家詳細(xì)解答一下,大家要仔細(xì)的閱讀哦。  Python Pandas聚合函數(shù)  在前一節(jié),我們重點(diǎn)介紹了窗口函數(shù)。我們知道,窗口函數(shù)可以與聚合函數(shù)一起使用,聚合函數(shù)指的是對(duì)一組數(shù)據(jù)求總和、最大值、最小值以及平均值的操作,本節(jié)重點(diǎn)...

    89542767 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<