Python科学计算工具:Numpy与Pandas入门 - 指南

在数据分析与人工智能的学习旅程中,Python 已经成为最受欢迎的编程语言。而在 Python 的科学计算生态中,NumPyPandas 是两大核心工具,它们分别负责高效的数值计算和灵活的数据处理。本文将带你快速入门这两大工具,为后续的数据分析与机器学习打下坚实基础。


一、NumPy:高效的数值计算库

1. 什么是 NumPy?

NumPy(Numerical Python)是 Python 的 科学计算基础库,主要提供:

  • 多维数组对象(ndarray):比 Python 的 list 更高效。
  • 数值计算函数:支持矩阵运算、线性代数、傅里叶变换等。
  • 广播机制:支持不同维度数组之间的运算。

它是后续许多库(如 Pandas、Scikit-learn、TensorFlow)的底层依赖。


2. 基本使用

import numpy as np
# 创建数组
arr = np.array([1, 2, 3, 4, 5])
print("数组:", arr)
# 数组运算
print("加 1:", arr + 1)
print("平方:", arr ** 2)
# 多维数组
matrix = np.array([[1, 2], [3, 4], [5, 6]])
print("二维数组:\n", matrix)

NumPy 的数组运算效率远高于 Python 的 list,适合大规模数值计算。


3. 常用函数

# 基本统计
print("最大值:", arr.max())
print("最小值:", arr.min())
print("平均值:", arr.mean())
# 随机数
rand_arr = np.random.rand(3, 3)
print("随机矩阵:\n", rand_arr)
# 矩阵运算
A = np.array([[1, 2], [3, 4]])
B = np.array([[2, 0], [1, 3]])
print("矩阵乘法:\n", np.dot(A, B))

二、Pandas:数据处理与分析利器

1. 什么是 Pandas?

Pandas 是基于 NumPy 构建的数据分析库,主要提供两个核心数据结构:

  • Series:一维带标签的数组,类似 Excel 中的一列。
  • DataFrame:二维表格,类似 Excel 的整张表。

它让 Python 在数据处理上变得像 Excel + SQL 的结合体。


2. Series 示例

import pandas as pd
# 创建 Series
scores = pd.Series([90, 85, 78, 92], index=["张三", "李四", "王五", "赵六"])
print("成绩:\n", scores)
# 索引与切片
print("张三的成绩:", scores["张三"])
print("平均成绩:", scores.mean())

3. DataFrame 示例

# 创建 DataFrame
data = {
"姓名": ["张三", "李四", "王五", "赵六"],
"成绩": [90, 85, 78, 92],
"年龄": [20, 21, 19, 22]
}
df = pd.DataFrame(data)
print("学生信息:\n", df)
# 基本操作
print("平均成绩:", df["成绩"].mean())
print("最高分学生:\n", df[df["成绩"] == df["成绩"].max()])

4. 数据清洗与处理

Pandas 还提供了强大的数据处理功能,常用于数据分析前的预处理:

# 缺失值处理
df.loc[2, "成绩"] = None
print("含缺失值:\n", df)
print("填充缺失值:\n", df.fillna(df["成绩"].mean()))
# 数据筛选
print("成绩大于85分的学生:\n", df[df["成绩"] >
85])
# 分组统计
print("按年龄分组统计成绩:\n", df.groupby("年龄")["成绩"].mean())

三、NumPy 与 Pandas 的区别

特性NumPyPandas
主要用途高效数值计算数据分析与处理
数据结构ndarray(多维数组)Series、DataFrame
操作对象数值为主结构化数据(表格)
适用场景矩阵运算、科学计算数据清洗、分析、可视化

简单理解:

  • NumPy 是计算引擎(快!)
  • Pandas 是分析助手(灵活!)

四、总结

在 Python 科学计算中:

  • NumPy 提供高效的数组运算,适合数学与矩阵计算;
  • Pandas 提供灵活的数据分析工具,适合表格数据处理。

如果说 NumPy 是底层的“数学内核”,那么 Pandas 就是贴近用户的“数据分析外壳”。掌握这两个工具,就能大幅提升你在数据分析、机器学习中的工作效率。

posted @ 2025-10-09 12:54  wzzkaifa  阅读(40)  评论(0)    收藏  举报