摘要:在中維度稱為軸,軸的數量稱為秩的數組類叫做返回字符串表示的類型名稱接受浮點數,但是由于精度影響,輸出的元素個數不確定。
這次機器學習的作業可以用第三方庫了,果斷拋棄 MATLAB 改用 Python
但是操作數組的 Numpy 之前一直沒用過,今天先看看官方教程入個門
Numpy 中主要的對象是同類元素組成的多維數組,可以通過一個正整數的元組進行索引。
在 Numpy 中維度(dimension)稱為軸(axes),軸的數量稱為秩rank
[[1., 0., 0.], [0., 1., 2.]] :rank=2
the first dimension has a length of 2, the second dimension has a length of 3
Numpy 的數組類叫做 ndarray or array
attributes:
ndarray.ndim
ndarray.shape
ndarray.size
ndarray.dtype:ndarray.dtype.name 返回字符串表示的類型名稱
ndarray.data
Example:
>>> import numpy as np >>> a = np.arange(15).reshape(3, 5) >>> a array([[ 0, 1, 2, 3, 4], [ 5, 6, 7, 8, 9], [10, 11, 12, 13, 14]]) >>> a.shape (3, 5) >>> a.ndim 2 >>> a.dtype.name "int64" >>> a.itemsize 8 >>> a.size 15 >>> type(a)Array Creation>>> b = np.array([6, 7, 8]) >>> b array([6, 7, 8]) >>> type(b)
create from list/tupe:
a = np.array([1, 2, 3])
b = np.array([[1, 2, 3], [4, 5, 6]], dtype=float)
create with shape:
zeros: np.zeros((3, 4))
ones: np.ones((2, 4, 3))
empty: np.empty((2, 3)) uninitialized
create sequences of number (similar to range()):
arange: np.arange(10, 30, 5) syntax is the same as range() but returns array
接受浮點數,但是由于精度影響,輸出的元素個數不確定。這種情況應使用 linspace
linspace: np.linspace(0, 2, 9) return an array contains 9 numbers from 0 to 2
Basic Operations算數操作對于 array 是按元素運算的,并返回一個新的 array
>>> a = np.array( [20,30,40,50] ) >>> b = np.arange( 4 ) >>> b array([0, 1, 2, 3]) >>> c = a-b >>> c array([20, 29, 38, 47]) >>> b**2 array([0, 1, 4, 9]) >>> 10*np.sin(a) array([ 9.12945251, -9.88031624, 7.4511316 , -2.62374854]) >>> a<35 array([ True, True, False, False], dtype=bool) >>> A = np.array( [[1,1], ... [0,1]] ) >>> B = np.array( [[2,0], ... [3,4]] ) >>> A*B # elementwise product array([[2, 0], [0, 4]]) # 兩種矩陣乘法 >>> A.dot(B) array([[5, 4], [3, 4]]) >>> np.dot(A, B) array([[5, 4], [3, 4]])
一元運算 (sum, min, max)
>>> a = np.random.random((2,3)) >>> a array([[ 0.18626021, 0.34556073, 0.39676747], [ 0.53881673, 0.41919451, 0.6852195 ]]) >>> a.sum() 2.5718191614547998 >>> a.min() 0.1862602113776709 >>> a.max() 0.6852195003967595 >>> b = np.arange(12).reshape(3,4) >>> b array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]]) >>> >>> b.sum(axis=0) # sum of each column array([12, 15, 18, 21]) >>> >>> b.min(axis=1) # min of each row array([0, 4, 8])Indexing, slicing and iterating
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/44658.html
摘要:中的和中的矩陣分析由于之前在做的源碼學習,并且將其的源碼翻譯成了的版本。在逛知乎里,我又發現了很多關于為什么這么快的討論,很有意思。作者鏈接來源知乎著作權歸作者所有。 python中的list和numpy中的矩陣分析 Author : Jasper Yang School : Bupt preface 由于之前在做GIbbsLDA++的源碼學習,并且將其c++的源碼翻譯成了pyth...
摘要:機器學習由于數據量較大,技術已成為必要。以下腳本演示了世界銀行數據的線性回歸實用程序和緩存下載程序省略了水印和繪圖標簽的代碼代碼應顯示以下圖像該計劃下載年世界銀行數據,并將嬰兒死亡率與人均進行對比。 showImg(https://segmentfault.com/img/remote/1460000019179713); 來源 | 愿碼(ChainDesk.CN)內容編輯 愿碼Sl...
摘要:首先介紹跟圖像處理顯示有關兩個庫和,然后介紹增強圖像對比度的實現原理。直方圖均衡化就是為了達到這個目的,均衡化后的圖像,像素落在每個灰度級上的個數是相等的。 首先介紹跟圖像處理、顯示有關兩個庫:NumPy和Matplotlib,然后介紹增強圖像對比度的實現原理。 NumPy NumPy是Python用于科學計算的基礎庫,提供了一些很有用的概念,如:N維數組對象,可用于表示向量、矩陣、圖...
摘要:是一個數據分析的開源庫。與表格或關系數據庫中的表非常神似。注意帶有一個索引,類似于關系數據庫中的主鍵。的統計函數分組與聚合通過方法,可以對數據組施加一系列的函數。函數的作用是串聯,追加數據行使用函數。 pandas(Python data analysis)是一個Python數據分析的開源庫。pandas兩種數據結構:DataFrame和Series 安裝:pandas依賴于NumPy...
摘要:學習筆記七數學形態學關注的是圖像中的形狀,它提供了一些方法用于檢測形狀和改變形狀。學習筆記十一尺度不變特征變換,簡稱是圖像局部特征提取的現代方法基于區域圖像塊的分析。本文的目的是簡明扼要地說明的編碼機制,并給出一些建議。 showImg(https://segmentfault.com/img/bVRJbz?w=900&h=385); 前言 開始之前,我們先來看這樣一個提問: pyth...
閱讀 725·2021-11-17 09:33
閱讀 3757·2021-09-01 10:46
閱讀 1751·2019-08-30 11:02
閱讀 3280·2019-08-29 15:05
閱讀 1396·2019-08-26 11:39
閱讀 2272·2019-08-23 17:04
閱讀 1973·2019-08-23 15:43
閱讀 1371·2019-08-23 14:12