es6一维数组转二维数组_技术图文:Numpy 一维数组 VS. Pandas Series
背景
Numpy 提供的最重要的數(shù)據(jù)結(jié)構(gòu)是 ndarray,它是 Python 中 list 的擴展。
Pandas 提供了兩種非常重要的數(shù)據(jù)結(jié)構(gòu) Series和DataFrame。
Numpy 中的一維數(shù)組與 Series 相似,一維數(shù)組只是提供了從0開始與位置有關(guān)的索引,而Series除了位置索引之外還可以附加額外的索引。本文將從對象的創(chuàng)建、屬性的訪問、數(shù)據(jù)的獲取以及常用方法等方面來總結(jié)這兩種結(jié)構(gòu)的異同。
1. 如何創(chuàng)建對象
1.1 創(chuàng)建一維數(shù)組對象
- 通過 list或tuple 創(chuàng)建一維數(shù)組。
- 通過數(shù)值范圍來創(chuàng)建一維數(shù)組,比如linspace()函數(shù),返回指定間隔內(nèi)的等間隔數(shù)字。arange()函數(shù),返回給定間隔內(nèi)的均勻間隔的值。
1.2 創(chuàng)建Series對象
Series 可以看作是能夠附加索引的一維數(shù)組,所以可以像 Numpy 創(chuàng)建一維數(shù)組一樣使用 list或tuple 來創(chuàng)建,甚至可以使用 Numpy的一維數(shù)組 直接創(chuàng)建。
- 通過列表list、元組tuple創(chuàng)建Series。
- 通過 Numpy 創(chuàng)建Series。
另外,Series 可以附加索引,所以可以在創(chuàng)建的時候直接指定需要附加的索引,以及利用字典的key-value鍵值對 來直接創(chuàng)建。
- 通過指定index關(guān)鍵字的方式創(chuàng)建帶有自定義索引的Series。
- 通過字典dict創(chuàng)建Series。
2. 如何獲取屬性
2.1 獲取一維數(shù)組對象屬性
在使用 Numpy 時,有時會想知道數(shù)組的某些信息,可以通過以下屬性來得到:
- numpy.ndarray.ndim 用于返回數(shù)組的維數(shù)(軸的個數(shù))也稱為秩,一維數(shù)組的秩為 1,二維數(shù)組的秩為 2,以此類推。
- numpy.ndarray.shape 表示數(shù)組的維度,返回一個元組,這個元組的長度就是維度的數(shù)目,即 ndim 屬性(秩)。
- numpy.ndarray.size 數(shù)組中所有元素的總量,相當(dāng)于數(shù)組的shape中所有元素的乘積,例如矩陣的元素總量為行與列的乘積。
- numpy.ndarray.dtype ndarray 對象的元素類型。
2.2 獲取Series對象屬性
Series 除了擁有 Numpy 中ndim、size、shap、dtype屬性外,還擁有下列屬性:
- index 附加的索引
- values 存儲的數(shù)據(jù)
- name 對象的名稱
3. 如何獲取數(shù)據(jù)
3.1 獲取一維數(shù)組對象數(shù)據(jù)
一維數(shù)組只有默認的位置索引,即從0開始的索引,所以獲取數(shù)據(jù)只有通過位置索引這一種方式。
- 通過整數(shù)索引(要獲取數(shù)組的單個元素,指定元素的索引即可。)
- 通過切片索引(切片操作是指抽取數(shù)組的一部分元素生成新數(shù)組。)
- 通過整數(shù)數(shù)組索引(方括號內(nèi)傳入多個索引值,可以同時選擇多個元素。)
- 通過布爾索引(通過一個布爾數(shù)組來索引目標(biāo)數(shù)組。)
3.2 獲取Series對象數(shù)據(jù)
因為不附加索引的 Series 也擁有位置索引,所以可以延用一維數(shù)組獲取數(shù)據(jù)的方式。另外 Series 也可以通過附加索引來獲取數(shù)據(jù)。
- 通過位置獲取數(shù)據(jù)
- 通過索引獲取數(shù)據(jù)
- 通過head()和tail()獲取數(shù)據(jù)
4. 基本運算
4.1 查看描述性統(tǒng)計數(shù)據(jù)
一維數(shù)組對象
描述性統(tǒng)計分析最常見的函數(shù)如下:
- numpy.min()函數(shù):返回數(shù)組的最小值或沿軸的最小值。
- numpy.max()函數(shù):返回數(shù)組的最大值或沿軸的最大值。
- numpy.quantile()函數(shù):計算沿指定軸的數(shù)據(jù)的分位數(shù)。
- numpy.median()函數(shù):沿指定軸計算中位數(shù)。返回數(shù)組元素的中位數(shù)。
- numpy.mean()函數(shù):計算沿指定軸的算術(shù)平均值。
- numpy.std()函數(shù):計算沿指定軸的標(biāo)準偏差。
Series對象
除了一維數(shù)組所提供的函數(shù)之外,Series也提供了更多的函數(shù)用于描述性統(tǒng)計分析。
import pandas4.2 數(shù)學(xué)運算
一維數(shù)組對象
- numpy.add()函數(shù):按元素相加。
- numpy.subtract()函數(shù):按元素相減。
- numpy.multiply()函數(shù):按元素相乘。
- numpy.divide()函數(shù):返回輸入的實際除法(按元素)。
- numpy.floor_divide()函數(shù):返回小于或等于輸入除法的最大整數(shù)(地板除)。
- numpy.power()函數(shù):按元素做冪運算。
在 Numpy 中對以上函數(shù)進行了運算符的重載,且運算符為 元素級。也就是說,它們只用于位置相同的元素之間,所得到的運算結(jié)果組成一個新的數(shù)組。
import numpySeries對象
Series 與 Numpy 中的一維數(shù)組一樣支持常用運算符的重載,并且可以把 Series對象 作為參數(shù)帶入到 Numpy 的數(shù)學(xué)運算中。
- numpy.sqrt()函數(shù):按元素返回數(shù)組的非負平方根。
- numpy.log()函數(shù):按元素取自然對數(shù)。
4.3 其它運算
由于 Series 可以附加索引,所以兩個 Series對象 進行相加的時候,必須滿足索引對齊。另外,Series 可以通過to_numpy()方法轉(zhuǎn)化成 Numpy 的一維數(shù)組。
import pandas總結(jié)
我們通過實例從對象的創(chuàng)建、屬性的獲取、數(shù)據(jù)的訪問以及常用函數(shù)等維度對比了 Numpy 的一維數(shù)組和 Pandas 的 Series 結(jié)構(gòu)。很多知識都是相通的,多對比多總結(jié)就會對整個模塊有更深入的了解。今天就到這里吧,See You。
后臺回復(fù)「搜搜搜」,隨機獲取電子資源!
歡迎關(guān)注,請掃描二維碼:
總結(jié)
以上是生活随笔為你收集整理的es6一维数组转二维数组_技术图文:Numpy 一维数组 VS. Pandas Series的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: rds基于什么开发_java rds
- 下一篇: linq from 多个sum_快手重拳