python ndarray數組對象特點及實例分享
1、numpy數組是同質數組,即所有元素的數據類型必須相同。
2、ndarray數組一般要求所有元素的數據類型相同,下標從0開始,最後一個元素的下標為數組長度減1。
實例
import numpy as np a = np.arange(0, 5, 1) print(a) b = np.arange(0, 10, 2) print(b)
知識點擴充:
定義數組
>>> import numpy as np >>> m = np.array([[1,2,3], [2,3,4]]) #定義矩陣,int64 >>> m array([[1, 2, 3], [2, 3, 4]]) >>> m = np.array([[1,2,3], [2,3,4]], dtype=np.float) #定義矩陣,float64 >>> m array([[1., 2., 3.], [2., 3., 4.]]) >>> print(m.dtype) #數據類型 float64 >>> print(m.shape) #形狀2行3列 (2, 3) >>> print(m.ndim) #維數 2 >>> print(m.size) #元素個數 6 >>> print(type(m)) <class 'numpy.ndarray'>
還有一些特殊的方法可以定義矩陣
>>> m = np.zeros((2,2)) #全0 >>> m array([[0., 0.], [0., 0.]]) >>> print(type(m)) #也是ndarray類型 <class 'numpy.ndarray'> >>> m = np.ones((2,2,3)) #全1 >>> m = np.full((3,4), 7) #全為7 >>> np.eye(3) #單位矩陣 array([[1., 0., 0.], [0., 1., 0.], [0., 0., 1.]]) >>> np.arange(20).reshape(4,5) #生成一個4行5列的數組 >>> >>> np.random.random((2,3)) #[0,1)隨機數 array([[0.51123127, 0.40852721, 0.26159126], [0.42450279, 0.34763668, 0.06167501]]) >>> np.random.randint(1,10,(2,3)) #[1,10)隨機整數的2行3列數組 array([[5, 4, 9], [2, 5, 7]]) >>> np.random.randn(2,3) #正態隨機分佈 array([[-0.29538656, -0.50370707, -2.05627716], [-1.50126655, 0.41884067, 0.67306605]]) >>> np.random.choice([10,20,30], (2,3)) #隨機選擇 array([[10, 20, 10], [30, 10, 20]]) >>> np.random.beta(1,10,(2,3)) #貝塔分佈 array([[0.01588963, 0.12635485, 0.22279098], [0.08950147, 0.02244569, 0.00953366]])
操作數組
>>> from numpy import * >>> a1=array([1,1,1]) #定義一個數組 >>> a2=array([2,2,2]) >>> a1+a2 #對於元素相加 array([3, 3, 3]) >>> a1*2 #乘一個數 array([2, 2, 2]) ## >>> a1=np.array([1,2,3]) >>> a1 array([1, 2, 3]) >>> a1**3 #表示對數組中的每個數做立方 array([ 1, 8, 27]) ##取值,註意的是它是以0為開始坐標,不matlab不同 >>> a1[1] 2 ##定義多維數組 >>> a3=np.array([[1,2,3],[4,5,6]]) >>> a3 array([[1, 2, 3], [4, 5, 6]]) >>> a3[0] #取出第一行的數據 array([1, 2, 3]) >>> a3[0,0] #第一行第一個數據 1 >>> a3[0][0] #也可用這種方式 1 >>> a3 array([[1, 2, 3], [4, 5, 6]]) >>> a3.sum(axis=0) #按行相加,列不變 array([5, 7, 9]) >>> a3.sum(axis=1) #按列相加,行不變 array([ 6, 15])
到此這篇關於python ndarray數組對象特點及實例分享的文章就介紹到這瞭,更多相關python ndarray數組對象有什麼特點內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python Numpy中ndarray的常見操作
- Python數據分析之Numpy庫的使用詳解
- python數據分析Numpy庫的常用操作
- python數學建模是加深Numpy和Pandas學習
- Python數據分析 Numpy 的使用方法