Numpy & Pandas (莫煩 Python 數據處理教學)
在統計學語言的角度來看,一維陣列可以稱爲vector(向量);而二維陣列可以稱爲matrix(矩陣);三維以上的就沒有特殊名稱,全都稱爲array。向量、矩陣都可以看作是陣列的特殊形式,被陣列這個概率所包含。
import numpy as np
array = np.array([[1, 2, 3],
[2, 3, 4]])
print(array)
print('number of dim:', array.ndim) # 幾維
print('shape:', array.shape) # 行數、列數
print('size:', array.size) # 元素個數
import numpy as np
a1 = np.array([2, 23, 4], dtype=np.float) # 定義型別
print(a1.dtype)
# 矩陣
a2 = np.array([[2, 23, 4],
[2, 32, 4]])
print(a2)
# ↓shape
a3 = np.zeros((3, 4)) # 三行四列
print(a3)
a4 = np.ones((3, 4), dtype=np.int16)
print(a4)
a5 = np.empty((3, 4)) # 接近爲零
print(a5)
a6 = np.arange(10, 20, 2) # 10-19 步長爲2
print(a6)
a7 = np.arange(12).reshape((3, 4)) # 三行四列 從0-11的矩陣
print(a7)
a8 = np.linspace(1, 10, 20).reshape((4, 5)) # 20段的 從1-10的數列
print(a8)
import numpy as np
a = np.array([10, 20, 30, 40])
b = np.arange(4) # 0-3
print(a, b)
c1 = b**2 # 平方
print(c1)
c2 = 10*np.sin(a) # 三角函數
print(c2)
print(b)
print(b < 3) # 返回True/False
# 矩陣運算
d = np.array([[1, 1],
[0, 1]])
e = np.arange(4).reshape((2, 2))
print(d)
print(e)
c3 = d*e # 逐個相乘
c3_dot = np.dot(d, e) # 矩陣乘法
c3_dot_2 = d.dot(e)
print(c3)
print(c3_dot)
print(c3_dot_2)
a2 = np.random.random((2, 4)) # 從0-1的亂數字
print(a2)
print(np.sum(a2))
print(np.min(a2))
print(np.max(a2))
print(np.sum(a2, axis=1)) # axis=1行數當中求和;axis=0列數當中的求和