关于pandas的离散化,面元划分详解


Posted in Python onNovember 22, 2019

pd.cut

pandas.cut(x, bins, right=True, labels=None, retbins=False, precision=3, include_lowest=False)

x:要分箱的输入数组,必须是一维的

bins:int或标量序列

若bins是一个int,它定义在x范围内的等宽单元的数量。然而,在这种情况下,x的范围在每一侧延伸0.1%以包括x的最小值或最大值

若bins是一个序列,它定义了允许非均匀bin宽度的bin边缘。在这种情况下不进行x的范围的扩展

right:bool,可选:决定区间的开闭,如果right == True(默认),则区间[1,2,3,4]指示(1,2],(2,3],(3,4]

labels:array或boolean,默认值为无:用作生成的区间的标签。必须与生成的区间的长度相同。如果为False,则只返回bin的整数指示符

retbins:bool,可选:是否返回bin。如果bin作为标量给出,则可能有用

precision:int:存储和显示容器标签的精度,默认保留三位小数

include_lowest:bool:第一个间隔是否应该包含左边

import numpy as np
import pandas as pd
# 使用pandas的cut函数划分年龄组
ages = [20,22,25,27,21,23,37,31,61,45,32]
bins = [18,25,35,60,100]
cats = pd.cut(ages,bins)
print(cats) # 分类时,当数据不在区间中将变为nan
# 统计落在各个区间的值数量
print(pd.value_counts(cats))
# 使用codes为年龄数据进行标号
print(cats.codes)
# 设置自己想要的面元名称
group_names = ['Youth','YoungAdult','MiddleAged','Senior']
print(pd.cut(ages, bins, labels=group_names))
# 设置区间数学符号为左闭右开
print(pd.cut(ages, bins, right=False))
# 向cut传入面元的数量,则会根据数据的最小值和最大值计算等长面元
print(pd.cut(ages, 4, precision=2)) # precision=2表示设置的精度

pd.qcut

与cut类似,它可以根据样本分位数对数据进行面元划分

pandas.qcut(x, q, labels=None, retbins=False, precision=3)

x:ndarray或Series

q:整数或分位数阵列分位数。十分位数为10,四分位数为4或者,分位数阵列,例如[0,.25,.5,.75,1.]四分位数

labels:array或boolean,默认值为无:用作生成的区间的标签。必须与生成的区间的长度相同。如果为False,则只返回bin的整数指示符。

retbins:bool,可选:是否返回bin。如果bin作为标量给出,则可能有用。

precision:int:存储和显示容器标签的精度

import numpy as np
import pandas as pd

# qcut可以根据样本分位数对数据进行面元划分
# data = np.random.randn(20) # 正态分布
data = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
cats = pd.qcut(data, 4) # 按四分位数进行切割
print(cats)
print(pd.value_counts(cats))
print("-------------------------------------------------")
# 通过指定分位数(0到1之间的数值,包含端点)进行面元划分
cats_2 = pd.qcut(data, [0, 0.5, 0.8, 0.9, 1])
print(cats_2)
print(pd.value_counts(cats_2))

以上这篇关于pandas的离散化,面元划分详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python解决方案:WindowsError: [Error 2]
Aug 28 Python
Python实现随机生成有效手机号码及身份证功能示例
Jun 05 Python
Python实现通过继承覆盖方法示例
Jul 02 Python
Python输出\u编码将其转换成中文的实例
Dec 15 Python
Python实现定时执行任务的三种方式简单示例
Mar 30 Python
一步步教你用python的scrapy编写一个爬虫
Apr 17 Python
python判断自身是否正在运行的方法
Aug 08 Python
Django之使用内置函数和celery发邮件的方法示例
Sep 16 Python
Python使用循环神经网络解决文本分类问题的方法详解
Jan 16 Python
opencv python在视屏上截图功能的实现
Mar 05 Python
Python实现封装打包自己写的代码,被python import
Jul 12 Python
python 进程池pool使用详解
Oct 15 Python
Python协程 yield与协程greenlet简单用法示例
Nov 22 #Python
使用pandas实现连续数据的离散化处理方式(分箱操作)
Nov 22 #Python
在OpenCV里使用Camshift算法的实现
Nov 22 #Python
利用Python的sympy包求解一元三次方程示例
Nov 22 #Python
Python matplotlib以日期为x轴作图代码实例
Nov 22 #Python
python快速排序的实现及运行时间比较
Nov 22 #Python
Python实现平行坐标图的绘制(plotly)方式
Nov 22 #Python
You might like
基于php iconv函数的使用详解
2013/06/09 PHP
解析PHP生成静态html文件的三种方法
2013/06/18 PHP
Smarty中调用FCKeditor的方法
2014/10/27 PHP
php遍历目录方法小结
2015/03/10 PHP
PHP SPL标准库之接口(Interface)详解
2015/05/11 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
如何用javascript去掉字符串里的所有空格
2007/02/08 Javascript
js 变量类型转换常用函数与代码[比较全]
2009/12/01 Javascript
js/jquery去掉空格,回车,换行示例代码
2013/11/05 Javascript
jQuery实现图片渐入渐出切换展示效果
2015/08/15 Javascript
微信jssdk在iframe页面失效问题的解决措施
2016/03/03 Javascript
jQuery UI制作选项卡(tabs)
2016/12/13 Javascript
Vue.js双向绑定操作技巧(初级入门)
2016/12/27 Javascript
AngularJs用户输入动态模板XSS攻击示例详解
2018/04/21 Javascript
vue的传参方式汇总和router使用技巧
2018/05/22 Javascript
vue-auto-focus: 控制自动聚焦行为的 vue 指令方法
2018/08/25 Javascript
详解Vue.js iview实现树形权限表(可扩展表)
2018/09/30 Javascript
使用electron实现百度网盘悬浮窗口功能的示例代码
2018/10/24 Javascript
详解JavaScript 新语法之Class 的私有属性与私有方法
2019/04/23 Javascript
解析JS在获取当前月的最后一天遇到的坑
2019/08/30 Javascript
Node.js fs模块(文件模块)创建、删除目录(文件)读取写入文件流的方法
2019/09/03 Javascript
Vue-Ant Design Vue-普通及自定义校验实例
2020/10/24 Javascript
举例介绍Python中的25个隐藏特性
2015/03/30 Python
Flask框架URL管理操作示例【基于@app.route】
2018/07/23 Python
对Pytorch神经网络初始化kaiming分布详解
2019/08/18 Python
Python异常模块traceback用法实例分析
2019/10/22 Python
Python如何操作docker redis过程解析
2020/08/10 Python
python 如何调用 dubbo 接口
2020/09/24 Python
C语言怎样定义和声明全局变量和函数最好
2013/11/26 面试题
优秀团支部事迹材料
2014/02/08 职场文书
2015年酒店前台工作总结
2015/04/20 职场文书
本科毕业论文致谢怎么写
2015/05/14 职场文书
企业宣传语大全
2015/07/13 职场文书
有关浪费资源的建议书
2015/09/14 职场文书
Python爬虫之自动爬取某车之家各车销售数据
2021/06/02 Python
python非标准时间的转换
2021/07/25 Python