Python NumPy数值计算核心指南

Python NumPy数值计算核心指南

一、NumPy简介

NumPy是Python数值计算的核心库,提供了高性能的多维数组对象及对其操作的工具。

二、数组基础

python 复制代码
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr)
print(type(arr))
print(arr.shape)

三、数组创建

python 复制代码
arr1 = np.array([1, 2, 3, 4, 5])
zeros = np.zeros((3, 4))
ones = np.ones((2, 3))
range_arr = np.arange(0, 10, 2)
linspace_arr = np.linspace(0, 1, 5)
random_arr = np.random.rand(3, 3)
random_int = np.random.randint(0, 10, (3, 3))

四、数组操作

索引和切片

python 复制代码
arr = np.array([0, 1, 2, 3, 4, 5])
print(arr[2])
print(arr[1:4])
print(arr[:3])
print(arr[::2])

多维数组索引

python 复制代码
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(matrix[0, 0])
print(matrix[1, :])
print(matrix[:, 2])
print(matrix[1:3, 1:3])

五、数学运算

python 复制代码
a = np.array([1, 2, 3, 4])
b = np.array([5, 6, 7, 8])
print(a + b)
print(a - b)
print(a * b)
print(a / b)
print(np.sum(a))
print(np.mean(a))
print(np.std(a))
print(np.max(a))
print(np.min(a))

六、矩阵运算

python 复制代码
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])
C = np.dot(A, B)
C = A @ B
print(A.T)
A_inv = np.linalg.inv(A)
det = np.linalg.det(A)
eigenvalues, eigenvectors = np.linalg.eig(A)

七、形状操作

python 复制代码
arr = np.random.rand(12)
print(arr.shape)
reshaped = arr.reshape(3, 4)
print(reshaped.shape)
flattened = reshaped.flatten()
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])
concatenated = np.concatenate([a, b], axis=0)
stacked = np.stack([a, b], axis=0)

八、广播机制

python 复制代码
A = np.array([[1, 2, 3], [4, 5, 6]])
B = np.array([10, 20, 30])
print(A + B)
A = np.array([[1], [2], [3]])
B = np.array([10, 20, 30])
print(A + B)

九、实验结果

常用NumPy函数速查表:

函数 说明 示例
np.array() 创建数组 np.array(1,2,3)
np.zeros() 零数组 np.zeros((2,3))
np.arange() 范围数组 np.arange(0,10,2)
np.reshape() 改变形状 arr.reshape(3,4)
np.dot() 矩阵乘法 np.dot(A,B)
np.mean() 平均值 np.mean(arr)
np.std() 标准差 np.std(arr)

十、总结

NumPy是Python科学计算的基础,掌握数组创建、操作、数学运算和广播机制,能够高效完成各种数值计算任务。


标签: Python | NumPy | 数值计算 | 数据处理 | 科学计算

相关推荐
李妍.5 小时前
PyTorch GPU 版安装记录(RTX 5060 + Python 3.14)
人工智能·pytorch·python
90后的晨仔5 小时前
Python 基础语法完整汇总
python
广慈新医知5 小时前
当健康问题越来越复杂,AI更适合先帮我们“把问题问清楚”
人工智能·python
一晌小贪欢5 小时前
python-第27天:Python面向对象详解
开发语言·python·数据可视化·面向对象·python办公
青 春 记 忆5 小时前
LeetCode 350. 两个数组的交集 II|Python 解法详解
python·算法·leetcode
迪康Defender5 小时前
公用电脑责任追溯难?迪康端点安全一体化管理系统用户模式详解
java·运维·开发语言·网络·其他·安全
16月6日-晴6 小时前
Java面向对象——接口
java·开发语言
wuyk5556 小时前
107.FreeRTOS 链表深度解析:从原理到面试满分答案
c语言·开发语言·数据结构·stm32·单片机·链表·面试
geovindu6 小时前
CSharp: Wordcloud
开发语言·后端·c#·.net·.netcore·词云
智购科技自动售卖机厂家6 小时前
2026自动售货机库存热力图分析:从设备分布到补货优先级的数据可视化实践~YH
大数据·python·信息可视化