欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > 《Python基础》之Numpy库

《Python基础》之Numpy库

2025/6/4 10:06:57 来源:https://blog.csdn.net/qq_61600833/article/details/144198343  浏览:    关键词:《Python基础》之Numpy库

目录

简介

一、创建数组

1、根据列表创建数组

2、创建全0数组

3、创建全1数组

4、创建单位矩阵

5、创建随机数数组

二、查看数组的属性

三、 数组的操作

1、索引和切片

 2、变形

3、拼接

 (1)、vstack() 纵向拼接

 (2)、hstack() 横向拼接

4、分割

 四、数组的运算

1、加减乘除

2、点乘运算

 五、常用函数

 总结


简介

NumPy(Numerical Python)是 Python 中用于科学计算的一个核心库。它提供了支持大规模多维数组和矩阵运算的高性能数据结构,以及用于处理这些数组的工具。NumPy 是许多其他科学计算库(如 SciPy、Pandas、Matplotlib 等)的基础。

一、创建数组

1、根据列表创建数组

numpy.array()

import numpy as np
list1 = [[1,2,3],[4,5,6],[7,8,9]]
arr = np.array(list1)
print(arr,type(arr))

 

2、创建全0数组

numpy.zeros()

arr1 = np.zeros((3,3))
print(arr1)

 

3、创建全1数组

numpy.ones()

arr2 = np.ones((3,3))
print(arr2)

 

4、创建单位矩阵

numpy.eye(n)

arr3 = np.eye(3)
print(arr3)

 

5、创建随机数数组

numpy.random.rand()

arr4 = np.random.rand(3,3)
print(arr4)

二、查看数组的属性

1、矩阵.shape        查看数组的形状

2、矩阵.size        查看数组的元素个数

3、矩阵.dtype        查看数组元素类型

4、矩阵.ndim        查看数组的维度

5、矩阵.astype()        将数组元素类型转换成指定类型

import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])print(arr.shape)  # 输出: (2, 3)
print(arr.size)   # 输出: 6
print(arr.dtype)  # 输出: int32
print(arr.ndim)   # 输出: 2arr0 = arr.astype(float)
print(arr0.dtype)   # 输出float64

三、 数组的操作

NumPy 提供了丰富的数组操作功能,包括索引、切片、变形、拼接、分割等。

1、索引和切片

arr = np.array([1, 2, 3, 4, 5])
print(arr[0])      # 输出: 1
print(arr[1:4])    # 输出: [2 3 4]arr2d = np.array([[1, 2, 3], [4, 5, 6]])
print(arr2d[0, 1])  # 输出: 2
print(arr2d[:, 1])  # 输出: [2 5]

 2、变形

numpy.reshape()

arr = np.array([1, 2, 3, 4, 5, 6])
reshaped_arr = arr.reshape((2, 3))
print(reshaped_arr)
# 输出:
# [[1 2 3]
#  [4 5 6]]

3、拼接

 (1)、vstack() 纵向拼接
import numpy as np
list1 = [[1,2,3],[4,5,6],[7,8,9]]
list2 = [[11,22,33],[44,55,66],[77,88,99]]
arr1 = np.array(list1)
arr2 = np.array(list2)
arr3 = np.vstack((arr1,arr2))
# arr4 = np.hstack((arr1,arr2))
print(arr3)
# print(arr4)

 

 (2)、hstack() 横向拼接
import numpy as np
list1 = [[1,2,3],[4,5,6],[7,8,9]]
list2 = [[11,22,33],[44,55,66],[77,88,99]]
arr1 = np.array(list1)
arr2 = np.array(list2)
# arr3 = np.vstack((arr1,arr2))
arr4 = np.hstack((arr1,arr2))
# print(arr3)
print(arr4)

4、分割

numpy.split(矩阵,n,axis=0)        将矩阵分为n份,axis=0时按行分割,axis=1时按列分割

arr = np.array([1, 2, 3, 4, 5, 6])
split_arr = np.split(arr, 3)
print(split_arr)  # 输出: [array([1, 2]), array([3, 4]), array([5, 6])]

 四、数组的运算

1、加减乘除

数组之间直接的加减乘除运算就是按照简单的对位运算

import numpy as np
list1 = [[1,2,3],[4,5,6],[7,8,9]]
list2 = [[11,22,33],[44,55,66],[77,88,99]]
arr1 = np.array(list1)
arr2 = np.array(list2)
arr6 = arr1+arr2
arr5 = arr1*arr2
print(arr5)
print(arr6)

 

2、点乘运算

numpy.dot(arr1,arr2)

arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6], [7, 8]])dot_product = np.dot(arr1, arr2)
print(dot_product)

 

 五、常用函数

NumPy 提供了许多用于数组处理的函数,例如求和、平均值、标准差、最大值、最小值等。

arr = np.array([1, 2, 3, 4, 5])# 求和
print(np.sum(arr))        # 输出: 15
# 平局值
print(np.mean(arr))       # 输出: 3.0
# 标准差
print(np.std(arr))        # 输出: 1.4142135623730951
# 最大值
print(np.max(arr))        # 输出: 5
# 最小值
print(np.min(arr))        # 输出: 1

 总结

NumPy 是 Python 科学计算的基础库,提供了高效的多维数组操作和丰富的数学函数。通过掌握 NumPy 的基本用法,你可以轻松地进行大规模数据处理和科学计算。NumPy 的强大功能使其成为数据科学、机器学习、图像处理等领域的重要工具。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com