page contents

NumPy,数据处理必备的Python神器!

今天我要和大家聊一个超级实用的Python库 - NumPy。作为数据处理和科学计算的基石,NumPy可以帮我们轻松处理大量数据。不知道大家有没有被Python处理数组时的慢速度困扰过?别担心,NumPy就是来解决这个问题的!

attachments-2025-03-FbF26PDb67d8ca8e17c28.jpg今天我要和大家聊一个超级实用的Python库 - NumPy。作为数据处理和科学计算的基石,NumPy可以帮我们轻松处理大量数据。不知道大家有没有被Python处理数组时的慢速度困扰过?别担心,NumPy就是来解决这个问题的!

初识NumPy

我们需要安装并导入NumPy:

1# 安装NumPy

2# pip install numpy

3

4import numpy as np  # 约定俗成的导入方式

创建NumPy数组

NumPy的核心是它的多维数组对象(ndarray)。来看看如何创建数组:

1# 从列表创建数组

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

3print(arr1)  # [1 2 3 4 5]

4

5# 创建特殊数组

6zeros = np.zeros(5)  # 创建5个元素都是0的数组

7ones = np.ones((2, 3))  # 创建2行3列的全1数组

8random_arr = np.random.rand(3, 3)  # 创建3x3的随机数数组

小贴士:np.zeros和np.ones都是创建数组的快捷方式,比手动输入要方便得多!

数组运算

NumPy的强大之处在于它的矢量化运算,看看这些神奇的操作:

1# 数组基础运算

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

3print(arr * 2)  # [2 4 6 8]

4print(arr + 10)  # [11 12 13 14]

5

6# 数组之间的运算

7arr2 = np.array([5, 6, 7, 8])

8print(arr + arr2)  # [6 8 10 12]

9print(arr * arr2)  # [5 12 21 32]

注意事项:这些运算都是元素级的,比普通Python循环快很多倍!

数组切片和索引

NumPy的索引操作和Python列表类似,但更加强大:

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

2                [4, 5, 6],

3                [7, 8, 9]])

4

5print(arr[0])  # 第一行 [1 2 3]

6print(arr[:, 1])  # 第二列 [2 5 8]

7print(arr[1:, 1:])  # 子数组 [[5 6]

8                    #        [8 9]]

数组变形和组合

来看看如何改变数组的形状:

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

2reshaped = arr.reshape(2, 3)  # 变成2行3列

3print(reshaped)

4

5# 数组拼接

6arr1 = np.array([1, 2, 3])

7arr2 = np.array([4, 5, 6])

8combined = np.concatenate([arr1, arr2])

9print(combined)  # [1 2 3 4 5 6]

实用函数

NumPy提供了大量实用的数学函数:

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

2print(np.sum(arr))  # 求和:15

3print(np.mean(arr))  # 平均值:3.0

4print(np.max(arr))  # 最大值:5

5print(np.min(arr))  # 最小值:1

小练习:

创建一个5x5的随机数数组,计算每行的平均值

将一个一维数组重塑成3x4的数组(提示:需要确保元素个数正确)

小贴士:使用NumPy时要注意数据类型,它比Python的列表更严格,混合类型可能会自动转换!

总结

今天我们学习了NumPy的基础知识:

创建数组的各种方法

数组的基本运算

切片和索引操作

数组形状的改变和组合

常用的数学函数

小伙伴们,今天的Python学习之旅就到这里啦!记得动手敲代码,有问题随时在评论区问我哦。祝大家学习愉快,Python学习节节高!‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌

更多相关技术内容咨询欢迎前往并持续关注好学星城论坛了解详情。

想高效系统的学习Python编程语言,推荐大家关注一个微信公众号:Python编程学习圈。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Python入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。

attachments-2022-05-rLS4AIF8628ee5f3b7e12.jpg

  • 发表于 2025-03-18 09:21
  • 阅读 ( 30 )
  • 分类:Python开发

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
小柒
小柒

1924 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1924 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章