python數據分析庫,python求矩陣維度必須一致_python數據分析(二)--Numpy

 2023-10-08 阅读 28 评论 0

摘要:數組運算數組與標量運算:作用于數組的每一個元素a = a / a.mean()python數據分析庫?一元函數:np.abs(x)、np.fabs(x)、np.sqrt(x)、np.square(x)、np.log(x)、np.log10(x)、np.log2(x)、np.ceil(x)(不超過元素的整數值)、np.floor(x)(小于這個元素的最大整

數組運算

數組與標量運算:作用于數組的每一個元素a = a / a.mean()

python數據分析庫?一元函數:np.abs(x)、np.fabs(x)、np.sqrt(x)、np.square(x)、np.log(x)、np.log10(x)、np.log2(x)、np.ceil(x)(不超過元素的整數值)、np.floor(x)(小于這個元素的最大整數值)、np.rint(x)(四舍五入)、np.modf(x)(小數部分和整數部分)、np.cos(x)、np.cosh(x)、np.exp(x)、np.sign(x)

二元函數:加減乘除乘方、np.maximum(x,y) np.fmax()

np.mod(x,y) np.copysign(x,y)(將數組y各元素的符號復制給數組x對應元素) 布爾型運算

python求和、adarray數組與csv文件寫入與讀出:

注意:csv文件只能有效存取一維數組和二維數組

寫入到csv文件中

python map函數?np.savetxt(frame,array,fmt='%.18e',delimiter=None)

frame:文件、字符串或產生器,可以是.gz或者.bz2的壓縮文件,文件名

array:存入文件的數組

隨機矩陣、fmt:寫入文件的格式:例如:%d %.2f %.18e

delimiter:分割字符串

例如:

python循環,a = np.arange(100).reshape(5,20)

np.savetxt('a.csv',a,fmt='%d',delimiter=',')

文件保存在當前文件目錄下,我的是在C盤的用戶目錄下,可以更改

python數據分析入門,從csv文件中讀出

np.loadtxt(frame,dtype=np.float,delimiter=None,unpack=False)

frame:文件名,可以是壓縮文件.gz或者.bz2

qpython,dtype:數據類型

delimiter:分割字符串,默認位任何空格

unpack:true,讀入屬性將分別寫入不同變量

多維數組的存取

注意:使用的時候要知道存入文件時數組的維度和元素類型

寫到文件中:

a.tofile(frame,sep='',format='%s')

frame:文件、字符串

sep:數據分割字符串、如果為空串,寫入文件為二進制。

format:寫入數據的格式

例如:

a.tofile('b.dat',sep=',',format='%d') //此時文件中為一串有逗號分割的數字,無分組信息

從文件中讀文件

np.fromfile(frame,dtype=float,count=-1,sep='')

count:讀入元素的個數,-1表示讀入整個文件

sep:數據分割字符串、如果為空串,讀取的文件為二進制。

例如:

c=np.fromfile('b.dat',dtype=np.int,sep=',') //此時c為一個一維數組

可以使用reshape變為多維數組。

便捷的文件存取

np.save(fname,array) //fname中以.npy為擴展名

np.savez(fname,array) //fname中以.npz為壓縮擴展名

np.load(fname)

隨機數函數--random子庫

rand(d0,d1,..dn) 根據d0-dn創建隨機數數組,浮點數[0,1),均勻分布

randn(d0,d1,..dn) 根據d0-dn創建隨機數數組,標準正態分布

randint(low,high,shape):根據shape創建隨機整數或整數數組,范圍是[low,high)

seed(s) 隨機數種子,s是給定的種子值

a=np.random.randn(3,4,5) //生成3維矩陣,維數分別是3,4,5

b=np.random.randint(100,200,(3,4))

shuffle(a) 根據數組a的第一軸進行隨機排序,改變數組a

permutation(a) 根據數組a的第一軸進行隨機排序,不改變數組a

choice(a,size,replace,p) 從一維數組a中以概率p抽取元素,形成size形狀新數組,replace表示是否可以重用元素,默認為true

uniform(low,high,size) 產生具有均勻分布的數組,low起始值,high結束值,size形狀

normal(loc,scale,size) 產生具有正態分布的數組,loc均值,scale標準差,size形狀

poisson(lam,size) 產生具有泊松分布的數組,lam隨機事件發生率,size形狀

統計函數

sum(a,axis=None) :給定軸axis計算和,axis整數或者元組

mean(a,axis=None):給定軸axis計算期望

average(a,axis=None,Weight=None) 給定軸axis計算數組a計算相關元素的加權平均值

std(a,axis=None) 計算數組a相關元素的標準差

var(a,axis=None) 計算數組a相關元素的方差

min(a)

argmin(a) 計算數組a中元素最小值、最大值降一維后下標

unravel_index(index,shape) 根據shape將一維下標index轉換成多維下標

ptp(a) 計算數組a中元素最大值和最小值的差

median(a) 計算數組a中元素的中位數(中值)

梯度函數--及斜率

np.gradient(a):返回元素的梯度,當f為多維時,返回每個維度梯度

圖像的數組表示

圖像:RGB色彩表示

PIL庫:具有強大圖像處理能力的第三方庫

使用:from PIL import Image

Image是PIL庫中代表一個圖像的類

im=np.array(Image.open("path+fileName"))

print(im.shape,im.dtype)

Image.open("E://Desktop//0.jpg").convert('L')將圖像轉化為灰度圖

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/3/129172.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息