📌 作者:啊...哦
📅 发布时间:2025年11月11日
🏷️ 标签:Python、NumPy、数据科学、数组、科学计算

一、什么是 NumPy?
NumPy(Numerical Python) 是 Python 科学计算的核心库之一,提供了高性能的多维数组对象(ndarray)和大量用于操作这些数组的函数。它是 Pandas、SciPy、Scikit-learn 等众多数据科学库的基础。

二、为什么选择 NumPy?

三、安装 NumPy

pip install numpy

四、NumPy 基础操作

1. 创建数组

import numpy as np

# 从列表创建
a = np.array([1, 2, 3])

# 创建全0数组
zeros = np.zeros((2, 3))

# 创建全1数组
ones = np.ones((3, 3))

# 创建单位矩阵
eye = np.eye(3)

# 创建等差数列
arange = np.arange(0, 10, 2)

# 创建线性间隔
linspace = np.linspace(0, 1, 5)

2. 数组属性

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

print("维度:", a.ndim)
print("形状:", a.shape)
print("元素个数:", a.size)
print("数据类型:", a.dtype)

3. 数组索引与切片

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

print("维度:", a.ndim)
print("形状:", a.shape)
print("元素个数:", a.size)
print("数据类型:", a.dtype)

4. 数组运算

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

print(a + b)        # [5 7 9]
print(a * 2)        # [2 4 6]
print(np.dot(a, b)) # 点积:32

5. 广播机制(Broadcasting)

a = np.array([[1], [2], [3]])
b = np.array([10, 20])

print(a + b)
# 输出:
# [[11 21]
#  [12 22]
#  [13 23]]

五、常用函数速查表

六、实战小案例:图像灰度化(使用 NumPy)

import numpy as np
from PIL import Image

# 加载图像并转为数组
img = Image.open("example.jpg").convert("RGB")
img_array = np.array(img)

# 灰度化公式:Gray = 0.299*R + 0.587*G + 0.114*B
gray = np.dot(img_array[...,:3], [0.299, 0.587, 0.114])

# 保存灰度图
gray_img = Image.fromarray(gray.astype(np.uint8))
gray_img.save("gray_example.jpg")

七、学习建议
✅ 先掌握基础:数组创建、索引、切片、运算
✅ 多动手实践:用 NumPy 实现小项目,如图像处理、数据分析
✅ 结合其他库学习:如 Pandas、Matplotlib、Scikit-learn
✅ 阅读官方文档:https://numpy.org/doc/

八、结语
NumPy 是 Python 数据科学的“地基”,掌握它是你迈向机器学习、深度学习、数据分析的第一步。希望这篇博客能帮你打好坚实的基础!

📌 欢迎关注我,后续将持续更新:
        Pandas 入门指南
        Matplotlib 可视化技巧
        Scikit-learn 实战项目

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐