首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Pandas 对数值进行分箱操作 4 种方法

分箱是一种常见数据预处理技术有时也被称为分桶或离散化,他可用于将连续数据间隔分组到“箱”或“桶”。在本文中,我们将讨论使用 python Pandas 库对数值进行分箱 4 种方法。...1、between & loc Pandas .between 方法返回一个包含 True 布尔向量,用来对应 Series 元素位于边界 left 和 right 之间。...我们需要确定哪个分数在感兴趣区间之间,并为其分配相应等级。....value_counts 通常用于计算系列唯一数量,但它也可用于使用 bins 参数将分组到半开箱。...返回series 表示每个 bin 中有多少条记录。 与 .qcut 不同,每个 bin 记录数不一定相同(大约)。.

1.1K20

Pandas 秘籍:1~5

该秘籍既分配了标量值(步骤 1 所示),又分配序列步骤 2 所示),以创建新列。 步骤 2 将四个不同序列使用加法运算符相加。 步骤 3 使用方法链来查找和填充缺失。...准备 以下是排序列简单指南: 将每列分为离散列或连续列 在离散列和连续列中将公共列分组 将最重要列组首先放置在分类列之前,然后再放置连续列 本秘籍向您展示如何使用此指南排序各列。...所得序列本身也具有sum方法,该方法可以使我们在数据帧获得总计缺失。 在步骤 4 ,数据帧any方法返回布尔序列,指示每个列是否存在至少一个True。...布尔序列每个取值为 0 或 1,因此所有适用于数值序列方法也适用于布尔。 准备 在此秘籍,我们通过将条件应用于数据列来创建布尔序列,然后从中计算汇总统计信息。...步骤 3 使用此掩码数据帧删除包含所有缺失行。 步骤 4 显示了如何使用布尔索引执行相同过程。 在数据分析过程,持续验证结果非常重要。 检查序列和数据帧相等性是一种非常通用验证方法。

37.2K10

针对SAS用户:Python数据分析库pandas

一个例子是使用频率和计数字符串对分类数据进行分组,使用int和float作为连续。此外,我们希望能够附加标签到列、透视数据等。 我们从介绍对象Series和DataFrame开始。...检查 pandas有用于检查数据方法。DataFrame.head()方法默认显示前5行。.tail()方法默认显示最后5行。行计数值可以是任意整数值,: ?...它们是: 方法 动作 isnull() 生成布尔掩码以指示缺失 notnull() 与isnull()相反 drona() 返回数据过滤版本 fillna() 返回填充或估算缺失数据副本 下面我们将详细地研究每个方法...df.columns返回DataFrame列名称序列。 ? 虽然这给出了期望结果,但是有更好方法。...它将.sum()属性链接到.isnull()属性来返回DataFrame缺失计数。 .isnull()方法对缺失返回True

12.1K20

Python 数据处理:Pandas使用

i处,并得到新Index is_monotonic 当各元素均大于等于前一个元素时,返回True is_unique 当Index没有重复时,返回True unique 计算Ilndex唯一数组...选项: 方法 描述 'average' 默认:在相等分组,为各个分配平均排名 'min' 使用整个分组最小排名 'max' 使用整个分组最大排名 'first' 按在原始数据出现顺序分配排名...DataFrame行用0,列用1 skipna 排除缺失,默认True level 如果轴是层次化索引(即Multilndex),则根据level分组约简 有些方法(idxmin和idxmax...: 方法 描述 isin 计算一个表示“Series各是否包含于传入序列布尔型数组 match 计算一个数组到另一个不同数组整数索引;对于数据对齐和连接类型操作十分有用 unique...后面的频率每个这些相应计数。

22.7K10

Pandas全景透视:解锁数据科学黄金钥匙

优化数据结构:Pandas提供了几种高效数据结构,DataFrame和Series,它们是为了优化数值计算和数据操作而设计。这些数据结构在内存连续方式存储数据,有助于提高数据访问速度。...利用内置函数:Pandas广泛使用内置函数来执行常见数据处理任务,排序、分组和聚合。这些函数通常经过高度优化,能够快速处理大量数据。...布尔,默认为False。如果为True,则在原DataFrame上进行操作,返回为None。limit:int, default None。...()函数将连续性数值进行离散化处理:如对年龄、消费金额等进行分组pandas.cut(x, bins, right=True, labels=None, retbins=False, precision...则表示将x数值分成等宽n份(即每一组内最大与最小之差约相等);如果是标量序列序列数值表示用来分档分界如果是间隔索引,“ bins”间隔索引必须不重叠举个例子import pandas

8910

Pandas图鉴(二):Series 和 Index

它们还支持布尔索引(用布尔数组进行索引),该图所示: Series.isin(), Series.between() 而可以在这张图片中看到他们是如何支持 "花式索引" (用整数阵列进行索引):...从原理上讲,如下图所示: 一般来说,需要保持索引唯一性。例如,在索引存在重复时,查询速度提升并不会提升。...Pandas没有像关系型数据库那样 "唯一约束"(该功能[4]仍在试验),但它有一些函数来检查索引是否唯一,并以各种方式删除重复。 有时,但一索引不足以唯一地识别某行。...大多数Pandas函数都会忽略缺失: 更高级函数(median, rank, quantile等)也是如此。 算术操作是根据索引来调整: 在索引存在非唯一情况下,其结果是不一致。...Pandas有df.insert方法,但它只能将列(而不是行)插入到数据框架(而且对序列根本不起作用)。

22320

Pandas 秘籍:6~11

每当索引标签对于一个对象唯一时,Pandas 默认为缺少。 不幸结果是,将序列数据类型更改为float,而每个序列仅具有整数作为。 发生这种情况是因为 NumPy 缺少对象。...具有至少一个True任何行都包含一列最大。 我们在步骤 5 对所得布尔序列求和,以确定多少行包含最大。 出乎意料是,行多于列。 步骤 6 深入说明了为什么会发生这种情况。...如果没有重复,则分组将毫无意义,因为每个组只有一行。 连续数字列通常具有很少重复,并且通常不用于形成组。...不管实际新标签是多少,新行始终将附加在最后。 即使使用列表分配也可以,但为清楚起见,最好使用字典,以便我们准确地知道与每个关联列,步骤 4 所示。...我们对 NumPy 数据数组使用布尔选择方式与在步骤 5 Pandas 序列处理方式相同。 bar方法将 x 高度和条形宽度作为其前三个参数,并将条形中心直接放在每个 x 处。

33.8K10

数据科学 IPython 笔记本 7.7 处理缺失数据

通常,它们围绕两种策略一种:使用在全局表示缺失掩码,或选择表示缺失条目的标记。 在掩码方法掩码可以是完全独立布尔数组,或者它可以在数据表示占用一个比特,在本地表示空状态。...这些方法都没有权衡:使用单独掩码数组需要分配额外布尔数组,这会增加存储和计算开销。标记减少了可以表示有效范围,并且可能需要 CPU 和 GPU 算法额外(通常是非最优)逻辑。...Pandas 可以遵循 R 指导,为每个单独数据类型指定位组合来表示缺失,但这种方法结果相当笨拙。...检测控制 Pandas 数据结构有两种有用方法来检测空数据:isnull()和notnull()。任何一个都返回数据上布尔掩码。...3 True dtype: bool ''' “数据索引和选择”中所述,布尔掩码可以直接用作Series或DataFrame索引: data[data.notnull()] ''' 0

4K20

五大方法添加条件列-python类比excellookup

这个函数依次接受三个参数:条件;如果条件为真,分配给新列;如果条件为假,分配给新列 # np.where(condition, value if condition is true, value...,是进行分组依据, 如果填入整数n,则表示将x数值分成等宽n份(即每一组内最大与最小之差约相等); 如果是标量序列序列数值表示用来分档分界 如果是间隔索引,“ bins”间隔索引必须不重叠...right :布尔,默认为True表示包含最右侧数值 当“ right = True”(默认)时,则“ bins”=[1、2、3、4]表示(1,2],(2,3],(3,4] 当bins是一个间隔索引时...include_lowest:布尔,表示区间左边是开还是闭,默认为false,也就是不包含区间左边。...duplicates:如果分箱临界唯一,则引发ValueError或丢弃非唯一 # 方法五 数据分箱pd.cut()——最类似于excel lookup方法 df7 = df.copy() bins

1.9K20

Pandas图鉴(三):DataFrames

read_csv最酷地方在于它能自动检测到很多东西,包括: 列名称和类型、 布尔表示法、 缺失表示,等等。...创建一个DataFrame 用已经存储在内存数据构建一个DataFrame竟是如此超凡脱俗,以至于它可以转换你输入任何类型数据: 第一种情况,没有行标签,Pandas连续整数来标注行。...还有两个创建DataFrame选项(不太有用): 从一个dict列表每个dict代表一个行,它键是列名,它是相应单元格)。...文档 "保留键序" 声明只适用于left_index=True和/或right_index=True(其实就是join别名),并且只在要合并没有重复情况下适用。...一列范围内用户函数唯一可以访问是索引,这在某些情况下是很方便。例如,那一天,香蕉以50%折扣出售,这可以从下面看到: 为了从自定义函数访问group by列,它被事先包含在索引

35120

数据导入与预处理-第6章-02数据变换

转换函数: 其中 max为样本数据最大,min为样本数据最小。max-min为极差。 以一个例子说明标准化计算过程。...等宽法 等宽法将属性值域从最小到最大划分成具有相同宽度区间,具体划分多少个区间由数据本身特点决定,或者由具有业务经验用户指定 等频法 等频法将相同数量划分到每个区间,保证每个区间数量基本一致...基于列重塑数据(生成一个“透视”表)。使用来自指定索引/列唯一来形成结果DataFrame轴。此函数不支持数据聚合,多个将导致列MultiIndex。...,将出售日期一列唯一变换成行索引。...使用pandasgroupby()方法拆分数据后会返回一个GroupBy类对象,该对象是一个可迭代对象,它里面包含了每个分组具体信息,但无法直接被显示。

19.2K20

pandas时间序列常用方法简介

2.truncate截断函数,实际上这也不是一个时间序列专用方法,而仅仅是pandas布尔索引一种简略写法:通过逐一将索引与起始比较得出布尔,从而完成筛选。...04 重采样 重采样是pandas时间序列一个特色操作,在有些连续时间记录需要按某一指定周期进行聚合统计时尤为有效,实现这一功能函数主要是resample。...关于pandas时间序列重采样,再补充两点:1.重采样函数可以和groupby分组聚合函数组合使用,可实现更为精细功能,具体可参考Pandasgroupby这些用法你都知道吗一文;2.重采样过程...,无论是上采样还是下采样,其采样结果范围是输入记录最小和最大覆盖范围,所以当输入序列为两段不连续时间序列记录时,可能会出现中间大量不需要结果(笔者亲历天坑),同时在上图中也可发现从4小时上采样为...05 滑动窗口 理解pandas时间序列滑动窗口最好方式是类比SQL窗口函数。实际上,其与分组聚合函数联系和SQL窗口函数与分组聚合联系是一致

5.7K10

Pandas 2.2 中文官方教程和指南(二十五·一)

许多链接包含了比内联示例提供更详细信息。 pandas(pd)和 NumPy(np)是唯一两个缩写导入模块。其余模块都明确导入,以供新用户使用。...在时间范围内 在时间之间使用索引器 构建排除周末并仅包含特定时间日期范围 矢量化查找 聚合和绘制时间序列 将具有小时列和天行矩阵转换为连续序列形式时间序列。...使用 Grouper 而不是 TimeGrouper 进行时间分组 带有一些缺失时间分组 Grouper 有效频率参数 时间序列 使用 MultiIndex 进行分组 使用 TimeGrouper...使 Matplotlib 看起来像 R 设置 x 轴主要和次要标签 在 IPython Jupyter 笔记本绘制多个图表 创建多行图 绘制热力图 注释时间序列图 注释时间序列图 #2 使用 Pandas...DataFrame,其中结构每个元素对应于框架一列: names = "count", "avg", "scale" # note that the offsets are larger

24800

Pandas 2.2 中文官方教程和指南(七)

涵盖了 NumPy 和 pandas 基本操作,4 种主要数据操作方法(包括索引、分组、重塑和连接)以及 4 种主要数据类型(包括缺失数据、字符串数据、分类数据和时间序列数据)。...涵盖了 NumPy 和 pandas 基本操作,4 种主要数据操作方法(包括索引、分组、重塑和连接)以及 4 种主要数据类型(包括缺失数据、字符串数据、分类数据和时间序列数据)。...每个子部分介绍一个主题(“处理缺失数据”),并讨论 pandas 如何解决该问题,其中穿插着许多示例。 对于刚开始使用 pandas 用户,应从 10 分钟入门 pandas 开始。...通过“分组”我们指的是涉及以下一个或多个步骤过程: 根据某些标准将数据分组每个组独立应用函数 将结果组合成数据结构 查看分组部分。...通过“分组”我们指的是涉及以下一个或多个步骤过程: 根据某些标准将数据分组每个组独立应用函数 将结果组合成数据结构 请参见分组部分。

25300
领券