Numpy基礎學習

2020-08-12 10:18:14

資源

Numpy & Pandas (莫煩 Python 數據處理教學)

一些概念

在統計學語言的角度來看,一維陣列可以稱爲vector(向量);而二維陣列可以稱爲matrix(矩陣);三維以上的就沒有特殊名稱,全都稱爲array。向量、矩陣都可以看作是陣列的特殊形式,被陣列這個概率所包含。

2.1numpy屬性

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)  # 元素個數

2.2numpy的建立array

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)

2.3numpy的基礎運算

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列數當中的求和