【Python數組及其基礎操作】【numpy ndarray】


一、創建數組

  在python中創建數組最簡單的辦法就是使用array函數。它接受一切序列型的對象,然后產生一個含有傳入數據的numpy數組。其中,嵌套序列(比如由一組等長列表組成的列表)會被轉換為一個多維數組。

  1、array函數:

 numpy.array(object, dtype = None, copy = True, order = None, subok = False ,ndmin = 0) 

  • object             數組或嵌套的數列
  • dtype              數組元素的數據類型,可選
  • copy               對象是否需要復制,可選
  • order              創建數組的樣式,C為行方向,F為列方向,A為任意方向(默認)
  • subok             默認返回一個與基類類型一致的數組
  • ndmin             指定生成數組的最小維度

 

1 #將列表轉換為數組
2 import numpy as np
3 a = [1, 2, 3, 4]           #創建列表
4 b = np.array(a)           #將列表轉換為數組
5 #這樣就創建完成了一個一維數組 b[1,2,3,4]
1 #直接創建一維數組
2 import numpy as np
3 a = np.array([1, 2, 3, 4])
1 #創建二維數組
2 import numpy as np
3 b = np.arry([ [1, 2, 3], [4, 5, 6], [7, 8, 9] ] )

  2、zeros和ones分別可以創建指定長度、形狀的全0或全1數組

1 improt numpy as np
2 np.zeros(3)                  #輸出結果為[0., 0., 0.]
3 
4 np.ones(3)                   #輸出結果為[1., 1., 1.]
5 
6 np.zeros(3,3)               
7 '''輸出結果為[[0., 0., 0.]
8             [0., 0., 0.]
9             [0., 0., 0.]]  '''

  

  3、創建隨機數組

1 improt numpy as np
2 np.random.rand(10, 10)    #創建指定形狀的數組(范圍在0,1之間)
3 np.random.uniform(0,100) #創建指定范圍內的一個數
4 np.random.randint(0, 100) #創建指定范圍內的一個整數
5 np.random.normal(1.7, 0.1, (2, 3)0  #給定均值/標准差/維度的正態分布

 

  4、arange函數:

1 np.arange(start, stop, step, dtype = None) 

 

  根據start(默認為0)和stop指定的范圍以及step(默認為1)生成一個數組

import numpy as np
a = np.arange(0, 10, 1)
b = np.arange(10)

  a與b相同為array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

 

 5、數組屬性

  • b.size               數組元素個數
  • b.shape           數組形狀
  • b.ndim             數組維度
  • b.dtype            數組元素類型
  • b.ltemsize        數組元素字節大小

 6、數組索引和切片

import numpy as np
#先定義一個一維數組[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
a = np.arange(10)
>>>a[5]
5
>>>a[2:5]
array([2, 3, 4])

 

 7、基本數組統計方法

    可以通過數組上的一組數學函數對整個數組或某個軸向的數據進行統計計算

  • sum             對數組中全部或某軸向的元素求和。零長度數組的sum為0
  • mean           算數平均數。零長度數組的mean為NaN
  • std,var          分別為標准差和方差,自由度可調(默認為n)
  • max,min     最大值和最小值
  • argmin, argmax     最大和最小元素的索引
  • cumsum          所有元素的累加
  • cumprod         所有元素的累積

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM