pandas cut函数分组,pandas cut函数详解及示例(25)
Pandas cut() 介绍
将数据进行离散化、将连续变量进行分段汇总
例如,假设我们有 1 到 10 的数字。在这里,我们对这些值进行分类并将它们区分为 2 组。这些组被称为bins。因此,我们将这组值区分为 bin 1 = 1 到 5 和 bin 2 = 5 到 10。现在,一旦我们有了这两个 bin,我们就可以决定哪些值更大,哪些值更小。因此,从 1 到 5 的数字小于从 5 到 10 的数字。因此,这些较小的数字被称为“低”,而较大的数字被称为“高”。
本文是Python Pandas教程系列的一部分,您可以点击Python Pandas使用教程查看所有。
Pandas cut() 的语法
下面给出了 Pandas cut() 的语法:
Pandas.cut(x, duplicates=’raise’, include_lowest = false, precision = 3, retbins = false, labels = none, right = true, bins)
x:一维数组
bins:整数–将x划分为多少个等距的区间,序列–将x划分在指定序列中,若不在该序列中,则是Nan
right:是否包含右端点
labels:是否用标记来代替返回的bins
precision:精度
include_lowest:是否包含左端点
cut() 函数在 Pandas 中是如何工作的?
下面给出了 cut() 函数在 Pandas 中的工作原理:
示例#1
利用 Pandas Cut() 函数将数字分割成 bin。
代码:
import numpy as np
import pandas as pd
df_num1 = pd.DataFrame({'num': np.random.randint(1, 30, 20)})
print(df_num1)
df_num1['num_bins'] = pd.cut(x=df_num1['num'], bins=[1, 5, 10, 15, 30])
print(df_num1)
print(df_num1['num_bins'].unique())
输出:
在上面的程序中,我们看到了如何将值分类到不同的 bin 中。首先我们导入numpy和pandas,然后定义不同的整数值,最后添加pandas.cut()函数将这些值分类为bins,最后将它们打印为单独的列,并打印bins中的唯一值,因此输出是生成。
示例#2
利用 Pandas cut() 函数来标记bins。
代码:
import numpy as np
import pandas as pd
df_num1 = pd.DataFrame({'number': np.random.randint(1, 50, 30)})
print(df_num1)
df_num1['numbers_labels'] = pd.cut(x=df_num1['number'], bins=[1, 25, 50], labels=['Lows', 'Highs'], right=False)
print(df_num1)
print(df_num1['numbers_labels'].unique())
输出:
在这里,我们做与之前相同的操作,但除了分类到 bin 之外,我们还将这些 bin 分类并标记为高点和低点。我们首先在python中导入pandas和numpy包。我们稍后为 bin 分配值,并通过使用 pandas.cut() 函数,我们将数值区分为 bin,最后查看哪些数字更大,哪些更小。因此,较大的数字称为高点,较小的数字称为低点。
结论
这是 Pandas cut() 的指南。在这里,我们将讨论介绍以及 pandas cut函数在 pandas 中的工作原理
常见问题FAQ
- 程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
- 请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!