学习numpy快速入门教程 心得体会(1)
一、numpy的主要對象
NumPy的主要對象是同構多維數組。例如,在3D空間中的一個點坐標為[1, 3, 5]具有一個軸(只有一層[ ]),軸中有3個元素,所以我們說它長度為3。另外,多維數組中軸的數量即為維度的數量(有多少層[ ],軸就有多少個,維度就有多少個,一般我們常用二維數組矩陣)。
二、ndarray對象有著許多重要的屬性
ndarray.ndim?- 數組的軸(維度)的個數。
ndarray.shape?- 數組的維度。其類型為一個整數元組,對于一個矩陣(n*m),它的shape就是(n,m)
ndarray.size?- 數組元素的總數。對于一個矩陣(n*m),其值就是n*m
ndarray.itemsize?- 數組中每個元素的字節大小。例如,對于float64類型,其值為8(64/8)
對于complex32?類型,其值為4(32/8)
針對第一和第二點展開舉例:
import numpy as np a = np.arange(6).reshape(2, 3) #構造一個二維的數組 b = np.array([6., 7., 8.]) #自定義一個一維的數組(即行向量),傳入的參數是一個列表類 print(a) print(a.ndim) print(a.size) print(a.itemsize) print("#########") print(b) print(b.ndim) print(b.size) print(b.itemsize)得到:
[[0 1 2]
?[3 4 5]]
2
6
4
#########
[6. 7. 8.]
1
3
8
ps:細心的小伙伴會發現其實python中數組與列表在表現形式上只是相差了中間的間隔符“ , ”
三、數組創建
1.你可以使用array函數從常規Python列表或元組中創建數組。
例如:
import numpy as np a = np.array([1, 2, 3]) b = np.array((4, 5, 6)) print(a) print("######") print(b)得到:
[1 2 3]
######
[4 5 6]
2.array?還可以將序列的序列轉換成二維數組,將序列的序列的序列轉換成三維數組...
例如:
import numpy as np a = np.array([(1, 2, 3), (4, 5, 6)]) print(a)得到:
[[1 2 3]
?[4 5 6]]? ? #轉換成了一個二維數組
3.也可以在創建時顯式指定數組的類型:
例如:
import numpy as np c = np.array([[1, 2], [3, 4]], dtype=complex) print(c)得到:
[[1.+0.j 2.+0.j]
?[3.+0.j 4.+0.j]]
4.其他獨特的數組創建
函數zeros創建一個全是0組成的數組;函數ones創建一個全是1組成的數組;函數empty創建一個內容隨機,默認為float64類型的數組;函數arange創建元素成等差的一維數組。
例如:
import numpy as np a = np.zeros((2, 3, 4)) b = np.ones((3, 4), dtype=np.int64) c = np.empty((2, 3)) d = np.arange(10, 30, 5) e = np.arange(0, 0.6, 0.2) print(a) print(b) print(c) print(d) print(e)得到:
[[[0. 0. 0. 0.]
? [0. 0. 0. 0.]
? [0. 0. 0. 0.]]
?[[0. 0. 0. 0.]
? [0. 0. 0. 0.]
? [0. 0. 0. 0.]]]
[[1 1 1 1]
?[1 1 1 1]
?[1 1 1 1]]
[[4.76660078e+180 2.90601812e+132 1.23478419e-259]
?[3.00755678e+161 3.12121749e+209 2.88225533e+214]]
[10 15 20 25]
[0. ?0.2 0.4]
總結
以上是生活随笔為你收集整理的学习numpy快速入门教程 心得体会(1)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle定时导入dat文件夹,ora
- 下一篇: 数据连接池默认配置带来的坑testOnB