pandas cut函数分组,pandas cut函数详解及示例(25)

作者 : 慕源网 本文共1449个字,预计阅读时间需要4分钟 发布时间: 2021-12-2 共336人阅读

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())

输出:

pandas cut函数分组,pandas cut函数详解及示例(25)

pandas cut函数分组,pandas cut函数详解及示例(25)

在上面的程序中,我们看到了如何将值分类到不同的 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())

输出:

pandas cut函数分组,pandas cut函数详解及示例(25)

pandas cut函数分组,pandas cut函数详解及示例(25)

在这里,我们做与之前相同的操作,但除了分类到 bin 之外,我们还将这些 bin 分类并标记为高点和低点。我们首先在python中导入pandas和numpy包。我们稍后为 bin 分配值,并通过使用 pandas.cut() 函数,我们将数值区分为 bin,最后查看哪些数字更大,哪些更小。因此,较大的数字称为高点,较小的数字称为低点。

结论

这是 Pandas cut() 的指南。在这里,我们将讨论介绍以及 pandas cut函数在 pandas 中的工作原理


慕源网 » pandas cut函数分组,pandas cut函数详解及示例(25)

常见问题FAQ

程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!

发表评论

开通VIP 享更多特权,建议使用QQ登录