读书报告

基本函数的用法
NumPy(数值计算):

  1. 数组创建
    np.array() - 从列表/元组创建数组
    np.zeros() - 创建全0数组
    np.ones() - 创建全1数组
    np.arange() - 创建等差数列
    np.linspace() - 创建等间隔数组
    np.random.rand() - 创建随机数组(0-1均匀分布)
    np.random.randn() - 创建随机数组(标准正态分布)

  2. 数组操作
    arr.shape - 查看形状
    arr.reshape() - 改变形状
    arr.T - 转置
    np.concatenate() - 数组拼接
    np.split() - 数组分割

  3. 数学运算
    np.sum() - 求和
    np.mean() - 求均值
    np.std() - 求标准差
    np.dot() - 点积/矩阵乘法
    np.sin()/cos()/exp() - 三角函数/指数函数
    SciPy(科学计算)

  4. 统计模块(scipy.stats)
    stats.norm() - 正态分布
    pdf() - 概率密度函数
    cdf() - 累积分布函数
    rvs() - 随机数生成
    ttest_ind() - 独立样本t检验

  5. 优化模块(scipy.optimize)
    minimize() - 函数最小化
    curve_fit() - 曲线拟合
    root() - 方程求解

  6. 积分模块(scipy.integrate)
    quad() - 单重积分
    dblquad() - 二重积分
    Pandas(数据分析)
    核心对象:
    Series(一维)和DataFrame(二维)

  7. 数据结构创建
    pd.Series() - 从列表创建
    Series pd.DataFrame() - 从字典创建
    DataFrame pd.read_csv() - 读取CSV文件
    pd.read_excel() - 读取Excel文件

  8. 数据选择与过滤
    df['Column'] - 选择列
    df.loc[] - 按标签选择
    df.iloc[] - 按位置选择
    df[条件] - 条件过滤
    df.query() - 查询方法

  9. 数据处理
    df.dropna() - 缺失值处理(删除)
    df.fillna() - 缺失值处理(填充)
    df.groupby() - 数据分组
    df.sort_values() - 数据排序
    pd.merge() - 数据合并
    Matplotlib(数据可视化)

  10. 基础绘图类型
    plt.plot() - 折线图
    plt.scatter() - 散点图
    plt.bar() - 柱状图
    plt.hist() - 直方图
    plt.boxplot() - 箱线图

  11. 图形设置
    plt.title() - 标题
    plt.xlabel()/ylabel() - 轴标签
    plt.legend() - 图例
    plt.grid() - 网格线
    plt.xlim()/ylim() - 坐标轴范围

  12. 多图布局
    plt.subplot() - 子图网格
    plt.subplots() - 面向对象API
    sharex/sharey - 共享坐标轴

  13. 样式调整
    plt.style.use() - 样式主题
    plt.figure(figsize=) - 图形大小
    plt.xticks(rotation=) - 刻度标签旋转
    cmap参数 - 颜色映射
    使用实例
    import numpy as np

创建数组

arr = np.array([1, 2, 3]) # 一维数组
mat = np.array([[1, 2], [3, 4]]) # 二维数组

常用属性

print(arr.shape) # 形状: (3,)
print(mat.dtype) # 数据类型: int64

数学运算

a = np.array([1, 2])
b = np.array([3, 4])
print(a + b) # 元素相加: [4 6]
print(np.dot(a, b)) # 点积: 11

统计函数

data = np.array([1, 2, 3, 4])
print(np.mean(data)) # 均值: 2.5
print(np.std(data)) # 标准差: 1.118

from scipy import stats
from scipy.integrate import quad

统计分布

norm_dist = stats.norm(0, 1) # 标准正态分布
print(norm_dist.pdf(0)) # 概率密度: 0.3989

数值积分

result, error = quad(lambda x: x**2, 0, 2) # 计算x²在[0,2]的积分
print(result) # 结果: 2.6667

优化

from scipy.optimize import minimize
res = minimize(lambda x: (x-2)**2, 0) # 最小化(x-2)²,初始值0
print(res.x) # 最优解: 2.0

import pandas as pd

创建DataFrame

data = {'Name': ['Alice', 'Bob'], 'Age': [25, 30]}
df = pd.DataFrame(data)

数据选择

print(df['Name']) # 选择列
print(df.iloc[0]) # 按位置选择行

数据处理

df['Age'] = df['Age'] + 1 # 列操作
print(df.describe()) # 统计摘要

文件读写

df.to_csv('data.csv', index=False) # 写入CSV
new_df = pd.read_csv('data.csv') # 读取CSV

import matplotlib.pyplot as plt
import numpy as np

绘制折线图

x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.plot(x, y)
plt.xlabel('x')
plt.ylabel('sin(x)')
plt.title('Sine Wave')
plt.show()

绘制散点图

x = np.random.rand(50)
y = np.random.rand(50)
plt.scatter(x, y)
plt.show()

绘制柱状图

data = [3, 5, 2, 7]
plt.bar(range(len(data)), data)
plt.show()



posted @ 2025-06-23 18:27  南萱  阅读(11)  评论(0)    收藏  举报