当前位置: 首页 > news >正文

数据分析流程

  1. 数据理解
    分析数据集基本结构(前/后10行)
    知识点:
    Pandas库:df.head(10), df.tail(10)
    数据框结构:理解什么是行(样本)、列(特征/变量)。
    识别变量类型:
    数据类型:
    数值型:
    连续型:可在一定范围内取任意值(如身高、温度)。
    离散型:只能取整数(如人数、物品数量)。
    类别型:
    定类型:无顺序的类别(如性别、城市)。
    定序型:有顺序的类别(如评分等级:高、中、低)。
    Pandas操作:df.dtypes(查看数据类型),df.info()(更全面的信息),df['column'].unique()(查看唯一值),df.describe()(数值型描述统计),df.describe(include='object')(类别型描述统计)。

  2. 数据清洗
    缺失值处理:
    识别缺失值:df.isnull().sum()
    处理策略:

  3. 删除:df.dropna()(适用于缺失量少,或该行/列不重要时)

  4. 填充:
    统计量填充:用均值、中位数(数值型)、众数(类别型)填充。df.fillna()
    模型预测填充:使用KNN、回归等模型预测缺失值(更复杂,但更科学)。
    前后值填充:df.fillna(method='ffill'或'bfill')(适用于时间序列数据)

  5. 数据整理
    数据集转化:
    特征工程:创建新特征(如从日期中提取“月份”、“星期几”)。
    类型转换:将类别变量转换为数值(如pd.get_dummies()进行独热编码)。
    数据合并:pd.concat(), pd.merge()

数据标准化:
目的:消除不同特征量纲和数值范围差异对模型的影响。
方法:
Z-score标准化:(x - mean) / std,使数据均值为0,标准差为1。from sklearn.preprocessing import StandardScaler
Min-Max归一化:(x - min) / (max - min),将数据缩放到[0, 1]区间。from sklearn.preprocessing import MinMaxScaler

3.数据集分割
目的:评估模型在未见过的数据上的性能,防止过拟合。
方法:from sklearn.model_selection import train_test_split
操作:X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=42)

  1. 数据分析
    核心目标:通过统计和可视化深入探索数据内在规律。
    探索性数据分析
    可视化库:matplotlib, seaborn
    常用图表:
    单变量分析:直方图、箱线图(查看分布、异常值)。
    双变量分析:散点图(查看关系)、热力图(查看相关性)。
    描述性数据分析
    统计量:
    集中趋势:均值、中位数、众数。
    离散程度:标准差、方差、四分位距。
    分布形态:偏度、峰度。

5.回归预测分析
回归预测
算法:
线性回归:from sklearn.linear_model import LinearRegression
决策树回归:from sklearn.tree import DecisionTreeRegressor
随机森林回归:from sklearn.ensemble import RandomForestRegressor

分析模型可靠性 & 误差分析
评估指标:
均方误差:from sklearn.metrics import mean_squared_error
平均绝对误差:from sklearn.metrics import mean_absolute_error
R²决定系数:from sklearn.metrics import r2_score
残差分析:绘制残差图(预测值 vs 残差),理想情况应随机分布在0附近。

模型参数检验
线性回归:检查系数及其p-value,判断特征是否显著。
树模型:查看特征重要性 model.feature_importances_
报告回归结果:
汇总并解释模型系数、截距、评估指标、显著性等。

6.数据可视化
产生并输出表格:
Pandas DataFrame的格式化输出,使用.to_excel()或.to_csv()导出。
产生并输出图形:
柱状图/条形图:plt.bar(),用于比较不同类别的数值。
饼图:plt.pie(),用于显示组成部分占比。
散点图:plt.scatter(),用于展示两个变量之间的关系。
箱线图:sns.boxplot(),用于展示数据分布和异常值。

http://www.gsyq.cn/news/40176.html

相关文章:

  • 2025 年 11 月锅炉厂家推荐排行榜,有机热载体锅炉,导热油锅炉,生物质锅炉,蒸汽锅炉,燃天然气锅炉,热水锅炉公司推荐
  • 9.22 未完成的情感投射
  • 2025 年 11 月电磁阀厂家推荐排行榜,高压电磁阀,防爆电磁阀,比例电磁阀,汽车电磁阀,ABS电磁阀,ESP电磁阀,车用ESC电磁阀公司推荐
  • 请求库的封装
  • 用户登录系统
  • Java 内存模型(JMM)中 volatile 的作用与限制
  • 论文导读:从 TSMC ISSCC 看 SRAM 存算发展
  • edge chromium浏览器copilot图标消失处理
  • AI - 自然语言处理(NLP) - part 2 - 词向量 - 教程
  • 洛谷 P4577
  • [linux-mint] Surface Pro4 安装linux驱动
  • [B] AGC VP 记录
  • 2025年河南工业大学2025新生周赛(2)
  • Reflections on Trusting Trust by Ken Thompson
  • [Agent] ACE(Agentic Context Engineering)源码阅读笔记---(1)基础模块
  • 顺序结构及选择结构
  • 洛谷 P10894
  • 服务器取证基本知识学习
  • 实用指南:【18】C实战篇——C语言 文件读写【fputc、fgetc、fputs、fgets】
  • L09_ java内注解反射的简单理解(作为小白,菜鸟的理解)
  • 20232323 2024-2025-1《网络与系统攻防技术》实验4实验报告
  • 直播带货话术不会写?这个AI指令帮你搞定
  • Java数组——数组的使用
  • NOIP2025加训
  • 20232427 2025-2026-1 《网络与系统攻防技术》实验四实验报告
  • Windows 系统下通过 VMware 17 安装 macOS 的教程
  • 2025.11.4 - A
  • 移动通信基站
  • kaggle提交 名字不是submission.csv的提交方法
  • NOIP2025 游记