工具篇(一)机器学习常用的python包

一、处理数据------pandas

主要做数据处理:

  • 读取数据(CSV / Excel / SQL)
  • 清洗数据(缺失值、重复值)
  • 数据计算(分组、聚合)
  • 数据结构(DataFrame)

📊 plotly 是干嘛的

主要做可视化,而且是:

👉 交互式图表(能缩放、悬停、点击)

例子:

复制代码

import plotly.express as px

fig = px.bar(df, x=df.index, y="sales")

fig.show()

👉 这一步是"把数据画出来"

二、数据可视化------Matplotlib&Seaborn&plotly

这三个库本质上是同一类工具(数据可视化),但定位不一样。

  • Matplotlib:最底层、最灵活(但最麻烦),适合需要精细控制(论文/定制图)
  • Seaborn:Matplotlib 的"美化+简化版",适合做数据分析(Jupyter里自己看)
  • Plotly:现代交互式图表(最炫、最适合展示),适合做展示/dashboard

1、Matplotlib(基础款 / 工具箱)

👉 Python 最原始的画图库

特点

  • 非常底层、可控性强
  • 什么都能画
  • 但代码比较"啰嗦"

示例

import matplotlib.pyplot as plt

x = 1, 2, 3

y = 4, 5, 6

plt.plot(x, y)

plt.title("Line Chart")

plt.show()

优点

  • 灵活到极致
  • 所有其他库都基于它

缺点

  • 写起来繁琐
  • 默认样式比较"丑"

2、Seaborn(美化版 Matplotlib)

👉 在 Matplotlib 上封装了一层,让图更好看、更简单

特点

  • 默认就很好看
  • 专注统计图(分布、关系、分类)

示例

import seaborn as sns

sns.barplot(x="A", "B", "C", y=10, 20, 15)

优点

  • 代码更少
  • 自动美化
  • 很适合数据分析

缺点

  • 灵活性不如 Matplotlib
  • 本质还是静态图

3、Plotly(交互式图表)

👉 现代 Web 风格图表

特点

  • 可以缩放、悬浮提示、点击
  • 支持网页展示 / dashboard
  • 非常适合汇报、BI

示例

import plotly.express as px

df = px.data.iris()

fig = px.scatter(df, x="sepal_width", y="sepal_length")

fig.show()

优点

  • 交互性强(鼠标悬停、缩放)
  • 很适合展示给别人看
  • 和网页/前端结合好

缺点

  • 有时在 Jupyter 里显示会有兼容问题(你刚遇到的)
  • 自定义细节不如 Matplotlib

**三、工具箱------**scikit-learn

复制代码
pip install scikit-learn

👉 sklearn = 用来做机器学习(预测 / 分类 / 聚类)的工具箱

对于机器学习来说,最常用的算法工具包是 scikit-learn,简称 sklearn,它是使用最广泛的开源 Python 机器学习库,堪称机器学习神器。sklearn 提供了大量用于数据挖掘的机器学习工具,覆盖数据预处理、可视化、交叉验证和多种机器学习算法。

1、分类(Classification)

比如:

  • 判断邮件是不是垃圾邮件
  • 判断用户会不会流失

from sklearn.linear_model import LogisticRegression


2、 回归(Regression)

比如:

  • 预测房价
  • 预测销量

from sklearn.linear_model import LinearRegression


3、聚类(Clustering)

比如:

  • 用户分群
  • 客户画像

from sklearn.cluster import KMeans


4、数据预处理

比如:

  • 标准化
  • 缺失值处理

from sklearn.preprocessing import StandardScaler


5、模型评估

比如:

  • 准确率
  • 混淆矩阵

from sklearn.metrics import accuracy_score

相关推荐
黑马程序员毕设3 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
白山编程大哥4 小时前
Java 集合算法:从排序、查找到底层原理的实战指南
java·python·算法
_Twink1e4 小时前
openJiuwen 实训营 Day 1 · WorkSwarm 入门教程
开发语言·c++·openjiuwen
问天_观心4 小时前
大模型微调学习(一)
开发语言·人工智能·学习·语言模型·github
阿里嘎多学长4 小时前
2026-09-03 GitHub 热点项目精选
开发语言·程序员·github·代码托管
昭昭日月明5 小时前
RAGFlow 入门,不用从零造轮子
python·ai编程
源代码•宸5 小时前
前置准备:定时微服务背景和现状
开发语言·经验分享·后端·微服务·云原生·架构·golang
2601_967338715 小时前
C#上位机开发零基础入门到精通全套视频
开发语言·c#
莓有烦恼吖6 小时前
Vibe Coding 的一些思考
python
小白学大数据6 小时前
超简单:用 Python 让 Excel 飞起来:用 openpyxl 把重复报表整理交给脚本
开发语言·数据库·python·excel