Numpy基礎知識總結

一維數組

numpy.array(object)	//object可以是列表,也可以是元組
numpy.arange(start,stop,step,dtype)
等差數組
numpy.linspace(start,stop,num,endpoint,retstep,dtype)
等比數組
numpy.logspace(start,stop,num,endpoint,base,dtype)

二維數組

numpy.array(object) //obejc必須是列表的列表,元組的元組
numpy.onses(shape,dtype) // 全是1的二維數組
numpy.zeros(shape,dtype) // 全是0的二維數組
numpy.full(shape,fill_value,dtype)
numpy.identity(n,dtype) //單位矩陣,對角線是1

數組的訪問

一維數組索引訪問

ndarray[index]

二維數組索引訪問

ndarray[所在0軸索引][所在1軸索引]
ndarray[所在0軸索引,所在1軸索引]

一維數組切片訪問

ndarray[start:end:step]

二維數組切片訪問

ndarray[所在0軸切片,所在1軸切片]

布爾索引

可以 傳遞布爾索引,從數組中過濾出我們需要的元素

深層複製

花式索引

當索引爲整數列表,一維整數數組或二維整數數組,就稱爲花式索引。
深層複製

數組的操作

連接數組

numpy.concatenate((a1,a2,...),axis)
numpy.vstack((a1,a2))//沿垂直方向
numpy.hstack((a1,a2))//沿水平方向

分割數組

numpy.split(ary,indices_or_sections,axis)
numpy.vsplict(ary,indices_or_sections)
numpy.hsplict(ary,indices_or_sections_

算術運算

±*/

數組廣播

數組與標量或者不同形狀的數組進行算術運算時候,就會發生數組廣播

數組常用函數

隨機數函數

numpy.random.rand(d0,d1,...dn)
numpy.random.randin(low,high,size,dtype)
numpy.random.normal(loc,scale,size)
numpy.random.randan(d0,d1,...)

排序函數

numpy.sort(a,axis=-1,kind=‘quicksort’,order=None)
numpy.argsort(a,axis=-1,kind=‘quicksort’,order=None)

聚合函數-求和

numpy.sum(a,axis=None)
numpy.nansum(a,axis=None)
numpy.ndarray.sum(axis=None)

聚合函數-求最大值

numpy.amax(a,axis=None)
numpy.nanmax(a,axis=None)
numpy.ndarray.max(axis=None)

聚合函數-求最小值

numpy.amin(a,axis=None)
numpy.nanmin(a,axis=None)
numpy.ndarray.min(axis=None)

聚合函數-求平均值

numpy.mean(a,axis=None)
numpy.nanmean(a,axis=None)

聚合函數-求加權平均值

numpy.amin(a,axis=None,weights=None)//weights表示權重

數據的保存和讀取

保存

numpy.save(file,arr,allow_pick,fix_imports)
numpy.savez(file)
numpy.savez_compressed(file)

讀取

numpy.load(file,mmap_mode,allow_pickle,fix_imports,encoding)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章