Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >特征锦囊:怎么批量把特征中的离群点给“安排一下”?

特征锦囊:怎么批量把特征中的离群点给“安排一下”?

作者头像
Sam Gor
发布于 2020-04-11 13:07:44
发布于 2020-04-11 13:07:44
93300
代码可运行
举报
文章被收录于专栏:SAMshareSAMshare
运行总次数:0
代码可运行

今日锦囊

特征锦囊:怎么批量把特征中的离群点给“安排一下”?

这个专栏停了也有一段时间了,自从上次对之前的内容进行了一次梳理之后,似乎是给自己一个“借口”休息了一阵子,现在感觉还是得重新拿出来继续更新了。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 导入数据集
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

train = pd.read_csv('./data/Group-Image-of-Consumers/train_dataset.csv')
test = pd.read_csv('./data/Group-Image-of-Consumers/test_dataset.csv')
data = pd.concat([train, test], ignore_index=True)
data.head()

我们简单从里面挑选几个数值型变量来看看分布情况吧,画图的技巧这里就不说了,可以参考之前画箱体图的那篇镜囊文章。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 挑选其中几个变量
feature_list=['当月网购类应用使用次数','当月金融理财类应用使用总次数','当月视频播放类应用使用次数']

# 绘制箱体图
sns.set_style("white")
f, ax = plt.subplots(figsize=(8, 7))
ax.set_xscale("log")
ax = sns.boxplot(data=data[feature_list] , orient="h", palette="Set1")
ax.xaxis.grid(False)
ax.set(ylabel="Feature names")
ax.set(xlabel="Numeric values")
ax.set(title="Numeric Distribution of Features")
sns.despine(trim=True, left=True)

可以看到红色框框圈起来的就是我们的离群点,那么我们可以怎么处理一下呢?这里给大家介绍一个方法,代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def process(all_data,feature_list):
    #处理离群点
    for col in feature_list:
        ulimit=np.percentile(all_data[col].values, 99.9) #计算一个多维数组的任意百分比分位数
        llimit=np.percentile(all_data[col].values, 0.1)
        all_data.loc[all_data[col]>ulimit,col]=ulimit  # 大于99.9%的直接赋值
        all_data.loc[all_data[col]<llimit,col]=llimit
    return all_data

使用刚刚我们编写的那个方法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 使用函数进行极端值的转换
data_new = process(data,feature_list)

# 绘制箱体图
sns.set_style("white")
f, ax = plt.subplots(figsize=(8, 7))
ax.set_xscale("log")
ax = sns.boxplot(data=data_new[feature_list] , orient="h", palette="Set1")
ax.xaxis.grid(False)
ax.set(ylabel="Feature names")
ax.set(xlabel="Numeric values")
ax.set(title="Numeric Distribution of Features")
sns.despine(trim=True, left=True)

see!我们的异常值就会被直接“安排”了,是不是很简单呢?其实异常值的处理还是有很大方法的,今天就抛砖引玉一下,更多的方法等待大家去挖掘哦!

往 期 锦 囊

特征锦囊:特征无量纲化的常见操作方法

特征锦囊:怎么进行多项式or对数的数据变换?

特征锦囊:常用的统计图在Python里怎么画?

特征锦囊:怎么去除DataFrame里的缺失值?

特征锦囊:怎么把被错误填充的缺失值还原?

特征锦囊:怎么定义一个方法去填充分类变量的空值?

特征锦囊:怎么定义一个方法去填充数值变量的空值?

特征锦囊:怎么把几个图表一起在同一张图上显示?

特征锦囊:怎么把画出堆积图来看占比关系?

特征锦囊:怎么对满足某种条件的变量修改其变量值?

特征锦囊:怎么通过正则提取字符串里的指定内容?

特征锦囊:如何利用字典批量修改变量值?

特征锦囊:如何对类别变量进行独热编码?

特征锦囊:如何把“年龄”字段按照我们的阈值分段?

特征锦囊:如何使用sklearn的多项式来衍生更多的变量?

特征锦囊:如何根据变量相关性画出热力图?

特征锦囊:如何把分布修正为类正态分布?

特征锦囊:怎么找出数据集中有数据倾斜的特征?

特征锦囊:怎么尽可能地修正数据倾斜的特征?

特征锦囊:怎么简单使用PCA来划分数据且可视化呢?

特征锦囊:怎么简单使用LDA来划分数据且可视化呢?

特征锦囊:怎么来管理我们的建模项目文件?

? GitHub传送门

https://github.com/Pysamlam/Tips-of-Feature-engineering

原创不易,如果觉得这种学习方式有用,希望可以帮忙随手转发or点下“在看”,这是对我的极大鼓励!阿里嘎多!?

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 SAMshare 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
特征锦囊:怎么尽可能地修正数据倾斜的特征?
上一个锦囊,分享了给大家通过skew的方法来找到数据集中有数据倾斜的特征(特征锦囊:怎么找出数据集中有数据倾斜的特征?),那么怎么去修正它呢?正是今天要分享给大家的锦囊!
Sam Gor
2020/02/17
8550
特征锦囊:怎么尽可能地修正数据倾斜的特征?
特征锦囊:如何把分布修正为类正态分布?
今天我们用的是一个新的数据集,也是在kaggle上的一个比赛,大家可以先去下载一下:
Sam Gor
2020/02/17
1.1K0
特征锦囊:如何把分布修正为类正态分布?
强烈推荐!分享一个持续连载的《特征工程小锦囊》项目,代码已开源!
随着我们在机器学习、数据建模、数据挖掘分析这条发展路上越走越远,其实越会感觉到特征工程的重要性,平时我们在很多地方都会看到一些很好的特征工程技巧,但是都会是一个完整项目去阅读,虽然说这样子也可以学习挖掘思路,但有的时候浓缩的技巧总结也是十分重要!
Sam Gor
2020/02/16
5730
强烈推荐!分享一个持续连载的《特征工程小锦囊》项目,代码已开源!
过关斩将打进 Kaggle 竞赛 Top 0.3%,我是这样做的
导读:刚开始接触数据竞赛时,我们可能会被一些高大上的技术吓到。各界大佬云集,各种技术令人眼花缭乱,新手们就像蜉蝣一般渺小无助。今天本文就分享一下在 kaggle 的竞赛中,参赛者取得 top0.3% 的经验和技巧。让我们开始吧!
Python数据科学
2019/07/16
9030
特征锦囊:怎么找出数据集中有数据倾斜的特征?
今天我们用的是一个新的数据集,也是在kaggle上的一个比赛,大家可以先去下载一下:
Sam Gor
2020/02/17
1.4K0
特征锦囊:怎么找出数据集中有数据倾斜的特征?
过关斩将打进Kaggle竞赛Top 0.3%,我是这样做的
从下图可以看出,融合后的模型性能最好,RMSE 仅为 0.075,该融合模型用于最终预测。
AI科技大本营
2019/07/18
1.9K1
过关斩将打进Kaggle竞赛Top 0.3%,我是这样做的
算法工程师-特征工程类岗位面试题目
1) DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)函数作用:删除含有空值的行或列
用户9925864
2022/07/27
5920
算法工程师-特征工程类岗位面试题目
10万+字的机器学习理论笔记&特征工程tips分享,附PDF下载
随着我们在机器学习、数据建模、数据挖掘分析这条发展路上越走越远,其实越会感觉到机器学习理论知识和特征工程的重要性,这里有两本一位好友整理的学习资料,都是满满干货!分别是《machine learning knowledge》和 《Tips of feature engineering》,全文加起来超过10万字!
Sam Gor
2020/04/11
9650
从入门到冠军 中国移动人群画像赛TOP1经验分享
郑雨轩,Datawhale数据科学团队负责人,长期活跃在国内外数据竞赛领域,拥有较为丰富的竞赛经验,最近比赛经历:
OpenCV学堂
2019/07/05
1.5K0
kaggle
整整80个特征。label标签是不是正态分布,如果不是正态分布很多算法就用不上了,因为回归分析就是基于正态分布的。
西红柿炒鸡蛋
2020/06/28
1K0
weekly kaggle 练习题解读(House Prices)
今天给大家来讲讲《House Prices: Advanced Regression Techniques》(房价预测模型)的思路:
机械视角
2019/10/23
1.2K0
weekly kaggle 练习题解读(House Prices)
科研绘图系列:python语言绘制SCI图合集
生信学习者
2025/01/13
1090
科研绘图系列:python语言绘制SCI图合集
机器学习实战(2)之预测房价
数据预处理要点: 1.使用log(x+1)来转换偏斜的数字特征 -,这将使我们的数据更加正常 2.为分类要素创建虚拟变量 3.将数字缺失值(NaN)替换为各自列的平均值
用户1359560
2018/11/08
6700
独家 | 手把手教你怎样用Python生成漂亮且精辟的图像(附教程代码)
在上周的文章《用python从不同的表单中提取数据》中,学习了如何从不同的源(Google Sheets、CSV和Excel)检索和统一数据。本教程与上一篇文章是相互独立的,所以你不必担心错过了上周的文章。
数据派THU
2019/10/08
1.2K0
独家 | 手把手教你怎样用Python生成漂亮且精辟的图像(附教程代码)
Python数据分析之Seaborn(样式风格)
Seaborn是一种基于matplotlib的图形可视化python库。它提供了一种高度交互式界面,便于用户能够做出各种有吸引力的统计图表。Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使用Seaborn就能做出很具有吸引力的图,而使用matplotlib就能制作具有更多特色的图。应该把Seaborn视为matplotlib的补充,而不是替代物。同时它能高度兼容numpy与pandas数据结构以及scipy与statsmodels等统计模式。掌握Seaborn能很大程度帮助我们更高效的观察数据与图表,并且更加深入了解它们。
AI异构
2020/07/29
2.6K0
Python数据分析之Seaborn(样式风格)
特征锦囊:彻底了解一下WOE和IV
第一次接触这两个名词是在做风控模型的时候,老师教我们可以用IV去做变量筛选,IV(Information Value),中文名是信息值,简单来说这个指标的作用就是来衡量变量的预测能力强弱的,然后IV又是WOE算出来的。姑且先不管原理哈,我们先给出来一下结论。
Sam Gor
2020/08/04
3K0
特征锦囊:彻底了解一下WOE和IV
官方调研重磅发布,Pandas或将重构?
为指引 Pandas 未来开发方向,Pandas 官方团队于 2019 年夏搞了一次调研,这次调研历时 15 天,共有 1250 条反馈数据。问卷数据保存在 data 文件夹的 2019.csv.zip 文件里。
double
2019/09/24
9950
官方调研重磅发布,Pandas或将重构?
特征锦囊:如何根据变量相关性画出热力图?
上次的锦囊有提及到如何使用sklearn来实现多项式的扩展来衍生更多的变量,但是我们也知道其实这样子出来的变量之间的相关性是很强的,我们怎么可以可视化一下呢?这里介绍一个热力图的方式,调用corr来实现变量相关性的计算,同时热力图,颜色越深的话,代表相关性越强!
Sam Gor
2020/02/17
2K0
特征锦囊:如何根据变量相关性画出热力图?
Python高级绘图库(Seanborn)
Python绘图一般都是利用matplotlib库,利用这个库可以画出各种优美的图形,但是这个库画一些论文中比较复杂的图形时,代码就比较难写。 今天就给大家介绍一个基于matplotlib制作的绘图专用的库,可以绘制论文所需的图形,代码还很简单。 这个库就是Seaborn! 绘图示例 散点图 import seaborn as sns sns.set_theme(style="ticks") df = sns.load_dataset("penguins") sns.pairplot(df, hue="s
GIS与遥感开发平台
2022/04/29
3.1K0
Python高级绘图库(Seanborn)
在Python中用Seaborn美化图表的3个示例
进行研究时,选择图像模式一般很容易,说实话:向团队或客户传达图像模式有时要困难得多。不仅很难用外行术语解释某些图像模式(尝试向非数学家解释一个数学符号),而且有时,您还需要试图表示对各种模式需要依赖的条件……怎么说呢?
deephub
2020/06/04
1.4K0
相关推荐
特征锦囊:怎么尽可能地修正数据倾斜的特征?
更多 >
交个朋友
加入腾讯云官网粉丝站
蹲全网底价单品 享第一手活动信息
加入讨论
的问答专区 >
1合伙人擅长4个领域
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
    本文部分代码块支持一键运行,欢迎体验
    本文部分代码块支持一键运行,欢迎体验