機器學習預備 numpy

2021-08-29 03:26:54 字數 2209 閱讀 1904

引入

import numpy as np

numpy 資料結構-ndarray

numpy 使用的陣列類是 ndarray

一些重要屬性如下:

ndarray.ndim 維數

ndarray.shape 返回(n, m),n行 m列

ndarray.dtype 型別

numpy 資料結構-mat

mat是ndarray的派生,進行矩陣運算比ndarray方便

a=np.mat(『4 3; 2 1』)

a=np.mat(np.array([[1,2],[3,4]]))

mat 的*過載為矩陣乘法

求逆a.i

numpy.inf

numpy.nan

numpy.e

numpy.pi

a = np.array([2

,3,4

])a = np.array([[

1,1]

,[1,

1]])

#指定型別

np.array([[

1,2]

,[3,

4]], dtype=

complex

)np.zeros((3

,4))

np.ones((2

,3,4

), dtype=np.int16 )

np.empty((2

,3))

#值不初始化,為記憶體亂值

#建立數字序列

np.arange(10,

30,5)

#array([10, 15, 20, 25])

np.arange(15)

.reshape(3,

5)#array([[ 0, 1, 2, 3, 4],

# [ 5, 6, 7, 8, 9],

# [10, 11, 12, 13, 14]])

附:

全部型別

常見操作符均已過載,其中注意:*分配成了逐一乘(matlab中.*),矩陣乘法採用np.dot(a, b)

拷貝:d = a.copy()

在不同陣列型別之間的操作,結果陣列的型別趨於更普通或者更精確的一種

array的索引,切片和迭代與python同

切片

上下拼接

np.vstack((a,b))

左右拼接

np.hstack((a,b))

ufuncs.html

當向量和矩陣結構不匹配響應運算時,會啟用廣播規則處理,可認為是一種自動補全機制

axis=0,對每列操作

axis=1,對每行操作

如對

若x為(n,)

sorted_indices = np.argsort(x)#根據x產生公升序排序索引

sorted_indices = np.argsort(-x)#根據x產生降序排序索引

這樣使用sorted_indices 來排序其他array

若y為(n,m)

y=y[sorted_indices,:]

python機器學習 Numpy

numpy是python語言的乙個擴充程式庫。支援高階大量的維度陣列與矩陣運算,此外也針對陣列運算提供大量的數學函式庫。numpy內部解除了python的pil 全域性直譯器鎖 運算效率極好,是大量機器學習框架的基礎庫 arr np.array 1 2,3 4,5 arr.shape 顯示的是維數,...

機器學習入門 numpy學習

numpy的基本使用 ndarray支援並行化運算 向量化運算 numpy內建了並行運算功能,當系統有多個核心時,做某種計算時,numpy會自動做平行計算 效率遠高於純python numpy底層使用c語言編寫,內部解除了gil 全域性直譯器鎖 其對陣列的操作速度不受python直譯器的限制,所以,...

機器學習 numpy庫的學習

import numpy as np import random 處理數值型的資料 使用numpy生成陣列,型別為ndarray t1 np.array 1 2,3 print t1 print type t1 t2 np.array range 10 print t2 full填充元素 np.fu...