numpy有時用np 表示(import numpy as np)
認識n維陣列-ndarray屬性
陣列屬性反映了陣列本身固有的資訊。
屬性名字
屬性解釋
ndarray.shape
陣列維度的元組
ndarray.ndim
陣列維數
ndarray.size
陣列中的元素數量
ndarray.itemsize
乙個陣列元素的長度(位元組)
ndarray.dtype
陣列元素的型別
dtype是numpy.dtype型別,對於陣列來說都有哪些型別
名稱描述簡寫
np.bool
用乙個位元組儲存的布林型別(true或false)
'b'np.int8
乙個位元組大小,-128 至 127
'i'np.int16
整數,-32768 至 32767
'i2'
np.int32
整數,-231 至 232 -1
'i4'
np.int64
整數,-263 至 263 - 1
'i8'
np.uint8
無符號整數,0 至 255
'u'np.uint16
無符號整數,0 至 65535
'u2'
np.uint32
無符號整數,0 至 2 ** 32 - 1
'u4'
np.uint64
無符號整數,0 至 2 ** 64 - 1
'u8'
np.float16
半精度浮點數:16位,正負號1位,指數5位,精度10位
'f2'
np.float32
單精度浮點數:32位,正負號1位,指數8位,精度23位
'f4'
np.float64
雙精度浮點數:64位,正負號1位,指數11位,精度52位
'f8'
np.complex64
複數,分別用兩個32位浮點數表示實部和虛部
'c8'
np.complex128
複數,分別用兩個64位浮點數表示實部和虛部
'c16'
np.object_
python物件
'o'np.string_
字串's'
np.unicode_
unicode型別
'u'基本操作
生成陣列
全0或全1陣列
全0:
全1:# zeros(shape[, dtype, order]) zeros_like(a[, dtype, order, subok])
zero = np.zeros([2, 3])
"""zero 生成結果
array([[0., 0., 0.],
[0., 0., 0.]])
"""
從現有陣列生成# ones(shape[, dtype, order])
one = np.ones([2, 3])
"""one結果
array([[1., 1., 1.],
[1., 1., 1.]])
"""
array(object[, dtype, copy, order, subok, ndmin])
asarray(a[, dtype, order])--(相當於拷貝中的淺拷貝當原始陣列發生變化對應也發生變化)
copy(a[, order])
生成固定範圍的陣列
np.linspace (start, stop, num, endpoint, retstep, dtype)
其他 numpy.arange(start,stop, step, dtype)np.linspace (start, stop, num, endpoint, retstep, dtype)
"""start 序列的起始值
stop 序列的終止值,
如果endpoint為true,該值包含於序列中
num 要生成的等間隔樣例數量,預設為50
endpoint 序列中是否包含stop值,預設為ture
retstep 如果為true,返回樣例,
以及連續數字之間的步長
dtype 輸出ndarray的資料型別
"""# 生成等間隔的陣列
np.linspace(0, 100, 10)
# 返回結果
array([ 0. , 11.11111111, 22.22222222, 33.33333333,
44.44444444, 55.55555556, 66.66666667, 77.77777778,
88.88888889, 100. ])
numpy.logspace(start,stop, num, endpoint, base, dtype)
生成隨機數組
均勻分布
np.random.rand(d0, d1, ..., dn)
返回[0.0,1.0)內的一組均勻分布的數。
np.random.uniform(low=0.0, high=1.0, size=none)
功能:從乙個均勻分布[low,high)中隨機取樣,注意定義域是左閉右開,即包含low,不包含high.
引數介紹:
low: 取樣下界,float型別,預設值為0;
high: 取樣上界,float型別,預設值為1;
size: 輸出樣本數目,為int或元組(tuple)型別,例如,size=(m,n,k), 則輸出mnk個樣本,預設時輸出1個值。
返回值:ndarray型別,其形狀和引數size中描述一致。
np.random.randint(low, high=none, size=none, dtype='l')
從乙個均勻分布中隨機取樣,生成乙個整數或n維整數陣列,取數範圍:若high不為none時,取[low,high)之間隨機整數,否則取值[0,low)之間隨機整數。
正太分布
np.random.randn(d0, d1, …, dn)
功能:從標準正態分佈中返回乙個或多個樣本值
np.random.normal(loc=0.0, scale=1.0, size=none)
loc:float
此概率分布的均值(對應著整個分布的中心centre)
scale:float
此概率分布的標準差(對應於分布的寬度,scale越大越矮胖,scale越小,越瘦高)
size:int or tuple of ints
輸出的shape,預設為none,只輸出乙個值
np.random.standard_normal(size=none)
返回指定形狀的標準正態分佈的陣列。
陣列的索引切片
切片(類似列表切片)[組下標,別表切片]
索引[組,下標]
陣列去重
ndarray.unique(items) 直接呼叫unique函式去重
numpy簡單使用
建立一維陣列 in 1 import numpy as np in 2 np.array 1,2,3 out 2 array 1,2,3 in 3 np.linspace 2.0,3.0,num 5 out 3 array 2.2.25,2.5 2.75,3.建立二維陣列 in 3 data 2,4...
資料探勘工具numpy(三)Numpy索引和切片
通過幾個例項掌握numpy的索引和切片方法 import numpy as np file dir number.csv file dir表示檔案位置 delimiter表示資料之間的間隔符 dtype表示資料型別 unpack表示轉置 按列數逐行的讀取資料 t np.loadtxt file di...
NumPy庫的簡單使用
numpython提供了兩種基本的物件 陣列的屬性及其說明 屬性說明 ndim 返回int。表示陣列的維數 shape 返回tuple。表示陣列的尺寸,對於n行m列的矩陣,形狀為 n,m size 返回int。表示陣列的元素總數,等於陣列形狀的乘積 dtype 返回data type。描述陣列中元素...