python numpy初步

import numpy as np
n1 = np.array([[1,2,3],[6,5,4]])
print(n1.shape)
print("np.arange")
n2 = np.arange(1,12,0.4)
print(n2)
n2 = np.linspace(1,12,4)
print(n3)
n2 = np.linspace(1,12,5)
print(n4)
print("np.arange 不帶步長參數")
print(np.arange(10))


(2, 3)
np.arange
[ 1.   1.4  1.8  2.2  2.6  3.   3.4  3.8  4.2  4.6  5.   5.4  5.8  6.2
  6.6  7.   7.4  7.8  8.2  8.6  9.   9.4  9.8 10.2 10.6 11.  11.4 11.8]
[ 1.          4.66666667  8.33333333 12.        ]
[ 1.    3.75  6.5   9.25 12.  ]
np.arange 不帶步長參數
[0 1 2 3 4 5 6 7 8 9]

上面程序的註釋:

n1:二維矩陣

n2:1到12,不含12, 0.4步長

n3:將1到12 均分爲3份,取得4個值,包含1和12。

n4:取得5個值的均分。

不帶步長參數,生成從0到參數的整數向量。

import numpy as np
n1 = np.array([range(2,4),range(5,8)])
print(n1)
#維度不相等,無法成爲正常矩陣
n2 = np.array([range(2,4),range(5,7)])
print(n2)
#維度相等,成爲2*2矩陣
n3 = np.array(range(4))
print(n3)
#直接用range賦值
a= [range(2,4),range(5,7)]
print(a)
#無法用range給list賦值

[range(2, 4) range(5, 8)]
[[2 3]
 [5 6]]
[0 1 2 3]
[range(2, 4), range(5, 7)]

numpy.empty(shape, dtype=float, order='C')

Return a new array of given shape and type, without initializing entries.

import numpy as np

n1 = np.empty([3,3],dtype=int)

print(n1)

​

[[       0     1156        5]
 [57481984        0    65541]
 [56251352        0        5]]

未初始化,注意。

np.zeros((2, 1))
array([[ 0.],
       [ 0.]])

用0初始化

np.random.randn返回一個或一組樣本,具有標準正態分佈。

import numpy as np
n1 = np.zeros((2, 1))
print(n1)
print(np.eye(3))
print(np.random.randn(3))
print(sum(np.random.randn(3)))

[[0.]
 [0.]]
[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
[ 0.48451999 -0.24370277  0.00866043]
0.5708764551147599

shuffle,將原來數組打亂,返回值None

import numpy as np
n1 = np.arange(10)
n2 = np.random.shuffle(np.arange(10))
print(n2,n1)

None [0 1 2 3 4 5 6 7 8 9]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章