📅  最后修改于: 2023-12-03 15:18:03.970000             🧑  作者: Mango
NumPy是一个Python库,用于支持大型多维数组和矩阵的数值计算。由于它的广泛应用,它已成为Python数据科学生态系统中的一个重要组成部分。本教程将介绍NumPy的基础知识和常用操作。
在使用NumPy之前,您需要先安装它。您可以使用pip在命令行中安装NumPy。
pip install numpy
在Python代码中使用NumPy需要先导入它。
import numpy as np
在大多数情况下,我们使用np
作为NumPy的别名。
使用NumPy创建数组的最简单方法是将Python列表传递给numpy.array()
函数。
a = np.array([1, 2, 3])
print(a)
输出:
[1 2 3]
您也可以通过传递Python嵌套列表的列表来创建多维数组。
b = np.array([[1, 2], [3, 4]])
print(b)
输出:
[[1 2]
[3 4]]
还有其他的创建数组的方法,例如numpy.zeros()
和numpy.ones()
。
c = np.zeros((3, 3))
print(c)
d = np.ones((2, 2))
print(d)
输出:
[[0. 0. 0.]
[0. 0. 0.]
[0. 0. 0.]]
[[1. 1.]
[1. 1.]]
在创建数组后,访问它的属性以及对它进行操作变得非常有用。
a = np.array([1, 2, 3])
print(a.shape) # 输出 (3, )
print(a.dtype) # 输出 int64
b = np.array([[1, 2], [3, 4]])
print(b.shape) # 输出 (2, 2)
print(b.size) # 输出 4
NumPy数组支持各种各样的操作,包括索引、切片、转置、连接和分割。
# 索引
a = np.array([1, 2, 3])
print(a[0]) # 输出 1
b = np.array([[1, 2], [3, 4]])
print(b[0, 1]) # 输出 2
# 切片
a = np.array([1, 2, 3, 4, 5])
print(a[1:4]) # 输出 [2 3 4]
b = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(b[:2, 1:]) # 输出 [[2 3] [5 6]]
# 转置
a = np.array([[1, 2], [3, 4]])
print(a.T)
# 连接
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
print(np.concatenate((a, b)))
# 分割
a = np.array([1, 2, 3, 4, 5, 6])
print(np.split(a, 3))
NumPy包括许多常用的数学函数,例如三角函数、指数函数、对数函数等。
# 三角函数
x = np.array([0, np.pi/2, np.pi])
print(np.sin(x))
# 指数函数和对数函数
x = np.array([1, 2, 3])
print(np.exp(x))
print(np.log(x))
NumPy提供了许多函数来执行线性代数操作,例如矩阵乘法和求行列式。
# 矩阵乘法
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])
print(np.dot(a, b))
# 求行列式
a = np.array([[1, 2], [3, 4]])
print(np.linalg.det(a))
本教程对NumPy的基础知识和常用操作进行了概述。NumPy是一个强大的Python库,用于数值计算和数据科学任务。了解NumPy的基础知识是成为数据科学家的第一步。通过实践和不断学习,您可以进一步掌握NumPy和其他数据科学工具。