NumPy 是 Python 頂用於科學打算跟數據處理的富強庫,它供給了多維數組東西(ndarray)以及一系列用於履行疾速數值打算的東西。NumPy 的核心上風在於其高效的數據處理才能,特別是在停止數組操縱時。本文將深刻探究 NumPy 的數組操縱技能,幫助妳輕鬆控制數據處理。
數組創建
NumPy 供給了多種創建數組的函數,以下是一些常用的方法:
1. 從列表或元組創建數組
import numpy as np
# 從列表創建一維數組
arr1 = np.array([1, 2, 3, 4, 5])
print(arr1)
# 從嵌套列表創建二維數組
arr2 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr2)
2. 利用內置函數創建數組
# 創建一個0到9的數組
arr3 = np.arange(10)
print(arr3)
# 創建一個全為1的數組
arr4 = np.ones((3, 3))
print(arr4)
# 創建一個全為0的數組
arr5 = np.zeros((2, 2))
print(arr5)
數組索引與切片
NumPy 數組支撐多種索引跟切片操縱,以下是一些基本用法:
1. 單一元素拜訪
print(arr2[0, 0]) # 拜訪第一個元素
2. 多維數組索引
print(arr2[1, 2]) # 拜訪第二行第三列的元素
3. 切片操縱
print(arr2[1:, 2:]) # 從第二行開端,抉擇全部列
數組的外形操縱
NumPy 數組支撐改變其外形的操縱,以下是一些基本用法:
1. 獲取數組的外形
print(arr2.shape) # 輸出:(2, 3)
2. 改變數組的外形
reshaped_arr = arr2.reshape(3, 2)
print(reshaped_arr)
數組的數學操縱
NumPy 供給了豐富的數學運算功能,以下是一些基本用法:
1. 算術操縱
result = arr1 + arr2 # 加法
print(result)
2. 播送機制
arr6 = np.array([1, 2, 3])
result = arr6 * arr2 # 播送機制下的乘法
print(result)
3. 線性代數運算
import numpy as np
# 打算矩陣的逆
arr7 = np.array([[1, 2], [3, 4]])
inverse = np.linalg.inv(arr7)
print(inverse)
高等數組操縱
NumPy 支撐多種高等數組操縱,以下是一些常用技能:
1. 花式索引跟切片
# 利用花式索引拜訪特定元素
print(arr2[[0, 2], [1, 0]])
2. 數組播送
arr8 = np.array([1, 2, 3])
arr9 = np.array([[1], [2], [3]])
result = arr8 * arr9 # 播送機制下的乘法
print(result)
數組在數據處理中的利用
NumPy 在數據處理中有著廣泛的利用,以下是一些基本用法:
1. 數據預處理
# 對數據停止標準化
arr10 = np.array([1, 2, 3, 4, 5])
mean = np.mean(arr10)
std = np.std(arr10)
normalized_arr = (arr10 - mean) / std
print(normalized_arr)
2. 數據聚合與統計
# 對數據停止聚合
arr11 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
sum_result = np.sum(arr11, axis=1)
print(sum_result)
經由過程以上介紹,妳應當可能輕鬆控制 NumPy 的數組操縱技能。NumPy 是 Python 數據科學範疇中弗成或缺的一部分,控制它將極大年夜地進步妳數據處理跟數值打算的才能。