成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

數據科學的基石:十個必學 NumPy 操作詳解

開發
本文介紹 NumPy 中最常用的十個操作,這些操作在數據分析和科學計算中非常實用。

NumPy是Python中用于科學計算的基礎庫,提供了高性能的多維數組對象和處理這些數組的工具。本文介紹NumPy中最常用的10個操作,這些操作在數據分析和科學計算中非常實用。

1. 創建數組

NumPy提供了多種創建數組的方法,最基本的是使用np.array()函數:

import numpy as np

# 創建一維數組
arr1 = np.array([1, 2, 3, 4, 5])

# 創建二維數組
arr2 = np.array([[1, 2, 3], [4, 5, 6]])

# 創建全零數組
zeros = np.zeros((3, 3))

# 創建全一數組
ones = np.ones((2, 2))

# 創建等差數列
arange = np.arange(10)

這些方法可以幫助我們快速創建不同類型的數組,適用于各種數據處理場景。

2. 數組的基本屬性和索引

了解數組的基本屬性和如何訪問數組元素是使用NumPy的基礎:

# 查看數組維度
print(arr2.ndim)

# 查看數組形狀
print(arr2.shape)

# 查看數組元素總數
print(arr2.size)

# 查看數組元素類型
print(arr2.dtype)

# 訪問單個元素
print(arr2[0, 0])

# 訪問一整行
print(arr2[0, :])

# 訪問一整列
print(arr2[:, 1])

# 切片操作
print(arr2[1:, 1:])

這些操作讓我們能夠了解數組的結構并精確地訪問數組中的元素。

3. 數組運算

NumPy支持數組的各種數學運算,無需使用循環即可對整個數組進行操作:

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])

# 數組加法
print(a + b)

# 數組減法
print(a - b)

# 數組乘法(元素級別)
print(a * b)

# 數組除法
print(a / b)

# 矩陣乘法
print(np.dot(a, b))

這種向量化運算是NumPy高效處理大型數據集的關鍵。

4. 統計函數

NumPy提供了豐富的統計函數,可以快速計算數組的統計特性:

arr = np.array([1, 2, 3, 4, 5])

# 求和
print(np.sum(arr))

# 平均值
print(np.mean(arr))

# 方差和標準差
print(np.var(arr))
print(np.std(arr))

# 最小值和最大值
print(np.min(arr))
print(np.max(arr))

# 最小值和最大值的索引
print(np.argmin(arr))
print(np.argmax(arr))

這些函數對于數據分析和統計工作非常有用。

5. 數組形狀操作

NumPy允許我們改變數組的形狀,而不改變其數據:

arr = np.arange(12)

# 重塑數組形狀
reshaped = arr.reshape(3, 4)

# 轉置數組
transposed = reshaped.T

# 展平數組
flattened = reshaped.flatten()

這些操作在處理多維數據時特別有用,例如圖像處理或深度學習。

6. 數組合并與分割

NumPy提供了多種方法來合并和分割數組:

a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])

# 水平合并
horizontal = np.hstack((a, b))
# 或使用
horizontal = np.concatenate((a, b), axis=1)

# 垂直合并
vertical = np.vstack((a, b))
# 或使用
vertical = np.concatenate((a, b), axis=0)

# 水平分割
h_split = np.hsplit(horizontal, 2)

# 垂直分割
v_split = np.vsplit(vertical, 2)

這些操作在處理和組織數據集時非常有用。

7. 隨機數生成

NumPy的隨機模塊提供了多種生成隨機數的方法:

# 生成0-1之間的隨機數
random_array = np.random.random((3, 3))

# 生成正態分布的隨機數
normal_array = np.random.normal(0, 1, (3, 3))

# 生成指定范圍內的隨機整數
random_integers = np.random.randint(0, 10, (3, 3))

# 生成指定概率分布的隨機數
random_choice = np.random.choice([1, 2, 3], size=5, p=[0.1, 0.3, 0.6])

隨機數生成在模擬、抽樣和機器學習中廣泛應用。

8. 線性代數操作

NumPy提供了豐富的線性代數函數:

a = np.array([[1, 2], [3, 4]])

# 矩陣的跡
print(np.trace(a))

# 矩陣的行列式
print(np.linalg.det(a))

# 矩陣的逆
print(np.linalg.inv(a))

# 矩陣的特征值和特征向量
eigenvalues, eigenvectors = np.linalg.eig(a)

# 解線性方程組
b = np.array([5, 6])
x = np.linalg.solve(a, b)

這些操作在科學計算、工程和數據分析中非常重要[2][3]。

9. 數組的條件操作

NumPy允許我們基于條件對數組進行操作:

arr = np.array([1, 2, 3, 4, 5])

# 條件索引
print(arr[arr > 2])

# 條件替換
arr[arr > 3] = 10

# 使用where函數
result = np.where(arr > 2, arr, 0)

# 統計滿足條件的元素個數
count = np.sum(arr > 2)

這些操作使得數據篩選和轉換變得簡單高效。

10. 數組的保存與加載

NumPy提供了保存和加載數組的功能,便于數據的持久化:

arr = np.array([[1, 2, 3], [4, 5, 6]])

# 保存數組到文件
np.save('my_array', arr)

# 從文件加載數組
loaded_arr = np.load('my_array.npy')

# 保存多個數組
np.savez('arrays', a=arr, b=arr*2)

# 加載多個數組
data = np.load('arrays.npz')
a = data['a']
b = data['b']

這些功能對于處理大型數據集和模型訓練非常有用。

總結

NumPy提供了豐富的功能,使Python成為科學計算和數據分析的強大工具。上述10個操作是NumPy中最常用的功能,掌握這些操作將大大提高數據處理的效率。NumPy的高性能和易用性使其成為Python科學計算生態系統的基礎,也是其他科學計算庫(如Pandas、SciPy和Scikit-learn)的核心依賴。

通過熟悉本文的這些操作,我們可以高效地處理大型數據集,進行復雜的數學計算,以及實現各種數據分析和機器學習算法。

責任編輯:趙寧寧 來源: Python數智工坊
相關推薦

2019-09-25 09:20:33

機器學習Python數據科學

2025-06-09 07:35:00

NumPy數據分析數組

2023-10-17 18:07:36

2020-09-08 15:15:06

Python數據科學Python庫

2024-10-21 16:54:43

NumPyPython并行計算

2024-01-12 07:32:35

數據科學Python庫項目

2024-09-13 09:59:27

2025-06-16 08:05:00

Python編程

2024-05-06 11:12:22

圖像處理數學計算NumPy

2025-01-20 09:10:00

2023-04-20 10:29:46

數據管理數據分析

2024-06-28 11:29:20

數據學習模型機器學習

2024-05-13 11:43:39

Python數據分析CSV

2022-02-07 00:05:49

機器學習GitHub工具

2021-01-29 14:38:36

數據科學數據科學家統計學

2025-06-11 08:25:00

Python編程開發

2020-08-11 17:14:31

數據庫SQL技術

2023-04-20 18:45:44

2021-12-03 17:13:04

CIO運營IT

2009-11-24 14:52:00

CCNP協議
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产伦精品 | 国产日屁 | 亚洲成人在线网 | 亚洲高清免费 | 人人天天操 | 午夜成人在线视频 | 午夜国产在线 | 亚洲一区二区在线 | 欧美一级久久久猛烈a大片 日韩av免费在线观看 | 日韩在线不卡视频 | 99精品一区二区 | 一级a性色生活片久久毛片 午夜精品在线观看 | 亚洲va中文字幕 | 亚洲欧美激情精品一区二区 | 中文字幕在线一区 | 欧美日韩综合 | 狠狠插狠狠操 | 亚洲一区二区三区免费视频 | 亚洲三级在线观看 | 视频一区在线播放 | 一级片aaa | 91久久久久久 | 色精品| 欧美久久久网站 | 欧美日韩一区二区在线观看 | 嫩草视频入口 | 欧美精品成人一区二区三区四区 | 91中文字幕在线 | 韩日精品在线观看 | 亚洲天堂中文字幕 | 久久久久国产一级毛片 | 日本a视频 | 国产日韩欧美二区 | 在线观看国产三级 | 日韩一区二区在线观看 | 成人在线免费视频观看 | 亚洲精品 在线播放 | 亚洲一二三区免费 | 香蕉视频黄色 | 精品视频久久久 | 亚洲视频精品 |