赞
踩
目录
NumPy(Numerical Python)是Python的一个开源的数值计算扩展库,主要用于对大量数据进行高效存储和计算。以下是一些NumPy在实际中的应用场景:
总的来说,只要涉及到大量数据的数值计算和处理,很可能都会需要用到NumPy。
NumPy并不是Python的标准库。但它是一个第三方库,是Python进行科学计算的基础包,也是许多Python数据处理和机器学习库的依赖库。
Python的标准库是随着Python安装包直接提供的库,如math(数学函数库),datetime(日期时间库),os(操作系统功能库)等。
NumPy则需要用户在安装Python后另行安装。常见的安装方法是使用pip(Python的包管理工具)进行安装,如在命令行中输入命令“pip install numpy”。
尽管NumPy不是Python的标准库,但它由于其在数值计算等方面的强大功能,以及被众多其他第三方库所依赖,已经成为Python数据科学领域的事实标准库之一。
以下是一些基本的NumPy使用方法:
import numpy as np
- arr = np.array([1, 2, 3, 4, 5]) # 创建一维数组
- arr_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) # 创建二维数组
- print(arr.shape) # 输出:(5,)
- print(arr_2d.shape) # 输出:(3, 3)
- print(arr.dtype) # 输出:int32 或 int64
- zero_arr = np.zeros((2, 2)) # 生成2x2的全0数组
- ones_arr = np.ones((3, 3)) # 生成3x3的全1数组
- eye_arr = np.eye(3) # 生成3x3的单位矩阵
- random_arr = np.random.random((4, 4)) # 生成4x4的随机数组
- a = np.array([1, 2, 3, 4])
- b = np.array([1, 2, 1, 2])
- add = a + b # 输出: array([2, 4, 4, 6])
- sub = a - b # 输出: array([0, 0, 2, 2])
- mul = a * b # 输出: array([1, 4, 3, 8])
- div = a / b # 输出: array([1., 1., 3., 2.])
此外,NumPy还提供了许多其他功能,如切片,索引,广播等等。其强大的功能使得NumPy成为Python科学计算的核心库。
以下是NumPy中切片,索引,广播的示例:
- arr = np.array([0, 1, 2, 3, 4, 5])
- print(arr[1:4]) # 输出:[1 2 3]
- arr_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
- print(arr_2d[:2, 1:3]) # 输出:[[2 3] [5 6]]
- arr = np.array([0, 1, 2, 3, 4, 5])
- print(arr[2]) # 输出: 2
- arr_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
- print(arr_2d[1, 2]) # 输出: 6
也可以通过布尔索引进行操作:
- arr = np.array([0, 1, 2, 3, 4, 5])
- print(arr > 2) # 输出:[False False False True True True]
- print(arr[arr > 2]) # 输出:[3 4 5]
- arr = np.array([0, 1, 2, 3, 4, 5])
- print(arr[1:4]) # 输出:[1 2 3]
- arr_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
- print(arr_2d[:2, 1:3]) # 输出:[[2 3] [5 6]]
以下是一些常用的NumPy方法:
以上只是NumPy中一小部分方法,NumPy提供了数百种高效实用的数组操作和数值计算函数,具体可以参考NumPy官方文档和教程学习使用。
以下通过一些例子展示NumPy的一些常用方法:
- import numpy as np
- arr = np.array([1, 2, 3, 4, 5])
- print(arr) # 输出:[1 2 3 4 5]
- arr = np.arange(0, 5, 1) # 从0开始,到5结束(不含5),步长为1
- print(arr) # 输出:[0 1 2 3 4]
- arr = np.arange(10)
- print(arr.reshape(2, 5)) # 输出:[[0 1 2 3 4] [5 6 7 8 9]]
- arr = np.random.random((2, 2))
- print(arr)
- arr = np.array([1, 2, 3, 4, 5])
- print(np.sum(arr)) # 输出:15
- print(np.min(arr)) # 输出:1
- print(np.max(arr)) # 输出:5
- print(np.mean(arr)) # 输出:3.0
- arr = np.array([4, 2, 1, 5, 3])
- print(np.sort(arr)) # 输出:[1 2 3 4 5]
- arr = np.array([[1, 2, 3], [4, 5, 6]])
- print(arr.T) # 输出:[[1 4] [2 5] [3 6]]
- arr1 = np.array([1, 2, 3])
- arr2 = np.array([4, 5, 6])
- print(np.concatenate((arr1, arr2))) # 输出:[1 2 3 4 5 6]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。