快速开始
type
status
date
slug
summary
tags
category
icon
password
Property
 
 
pyecharts中可以绘制的图有很多,这里先总体的了解一下使用风格,和调用的方式

Notebook中创建一个条形图

notion image
 

链式调用

链式调用在某些情况下可以让代码更加简洁。pyecharts中所有的方法都支持链式调用,比如以上条形图的代码可以改成:
配置项
type
status
date
slug
summary
tags
category
icon
password
Property
 
 
 
notion image
 

AnimationOpts:Echarts 画图动画配置项

可以配置画图的动画,比如是否开启动画,动画持续时间,动画缓动效果等
 

InitOpts:初始化配置项

可以配置诸如图像宽度,高度,图表主题,背景颜色等:
条形图
type
status
date
slug
summary
tags
category
icon
password
Property
 

横向条形图

横向条形图只要调用reversal_axis()即可
notion image
 

堆叠条形图

堆叠条形图只要在添加y轴的函数add_yaxis上添加stack参数即可:
notion image
 
 
箱线图
type
status
date
slug
summary
tags
category
icon
password
Property
 
 
notion image
 
 
 
notion image
 
散点图
type
status
date
slug
summary
tags
category
icon
password
Property
 
散点图用的是pyecharts.charts.Scatter来实现的

基本使用

notion image
 
 

多维散点图

notion image
地理图
type
status
date
slug
summary
tags
category
icon
password
Property
 

中国地图

notion image
 

中国局部地图

notion image
 

世界地图

notion image
Scikit-Learn
type
status
date
slug
summary
tags
category
icon
password
Property
 
作为专门面向机器学习的Python开源框架,Scikit-learn可以在一定范围内为开发者提供非常好的帮助。它内部实现了各种各样成熟的算法,容易安装和使用,样例丰富,而且教程和文档也非常详细。
另一方面,Scikit-learn也有缺点。例如它不支持深度学习和强化学习,这在今天已经是应用非常广泛的技术。此外,它也不支持图模型和序列预测,不支持Python之外的语言,不支持PyPy,也不支持GPU加速。
如果不考虑多层神经网络的相关应用,Scikit-learn的性能表现是非常不错的。究其原因,一方面是因为其内部算法的实现十分高效,另一方面或许可以归功于Cython编译器;通过CythonScikit-learn框架内部生成C语言代码的运行方式,Scikit-learn消除了大部分的性能瓶颈。
 
数据准备
type
status
date
slug
summary
tags
category
icon
password
Property
 

数据清洗


 
不平衡数据:

降维


 
 
处理缺失数据
type
status
date
slug
summary
tags
category
icon
password
Property
 

Pandas处理缺失数据

notion image

滤除缺失数据

处理缺失数据的最简单策略是删除包含缺失值的记录,Pandas提供了dropna()用于删除缺少数据的列或行:
 
 
 
 
删除重复数据
type
status
date
slug
summary
tags
category
icon
password
Property
 
 
  • duplicated()返回布尔型Series表示每行是否为重复行
  • drop_duplicates()过滤重复行
默认判断全部列,可指定按某些列判断
 
 
 
异常值检测
type
status
date
slug
summary
tags
category
icon
password
Property
 
 

什么时候需要异常点检测?

常见的有三种情况:
  • 在做特征工程的时候需要对异常的数据做过滤,防止对归一化等处理的结果产生影响
  • 对没有标记输出的特征数据做筛选,找出异常的数据
  • 对有标记输出的特征数据做二分类时,由于某些类别的训练样本非常少,类别严重不平衡,此时也可以考虑用非监督的异常点检测算法来做
 
异常点检测的目的是找出数据集中和大多数数据不同的数据,常用的异常点检测算法一般分为三类:
  • 基于统计学的方法来处理异常数据
    • 构建一个概率分布模型,计算对象符合该模型的概率,把具有低概率的对象视为异常点。比如RobustScaler在做数据特征值缩放时,会利用数据特征的分位数分布,将数据根据分位数划分为多段,只取中间段来做缩放,比如只取25%分位数到75%分位数的数据做缩放,这样减小了异常数据的影响。
  • 基于聚类的方法来做异常点检测
    数值替换
    type
    status
    date
    slug
    summary
    tags
    category
    icon
    password
    Property
     
     
    replace根据值的内容进行替换