有条件分箱

2023-12-28

是否可以在数据框中创建一个新列,其中“X”的容器基于另一列的值。下面的例子。

AR1、PO1 和 RU1 的容器彼此不同。

到目前为止,我只能获取“X”中所有值的容器。

import pandas as pd
import numpy as np
import string
import random

N = 100
J = [2012,2013,2014]
K = ['A','B','C','D','E','F','G','H']
L = ['h','d','a']
S = ['AR1','PO1','RU1']

np.random.seed(0)

df = pd.DataFrame(
    {'X': np.random.uniform(1,10,N),
     'Y': np.random.uniform(1,10,N),
     'J':np.random.choice(J, N),
     'R':np.random.choice(L, N),
     'S':np.random.choice(S,N)
    })

df['bins_X'] = pd.qcut(df['X'], 10)

print(df.head())

我想要的输出:

EDIT;

在我的真实数据上,我得到一个 ValueError:边缘不唯一。我可以用即排名来解决这个问题吗?我如何将其添加到建议的解决方案中?


使用简单pd.qcut在一个groupby on S

df['bins_X'] = df.groupby('S').X.apply(pd.qcut, q=10, labels=np.arange(10))

df.groupby(['bins_X', 'S']).size().unstack()

S       AR1  PO1  RU1
bins_X               
0         3    4    4
1         3    3    4
2         3    3    4
3         2    3    4
4         3    4    4
5         3    3    3
6         2    3    4
7         3    3    4
8         3    3    4
9         3    4    4

离开的labels参数如果你希望它们有自己独特的边缘

df['bins_X'] = df.groupby('S').X.apply(pd.qcut, q=10)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有条件分箱 的相关文章

  • 使用 openCV 对图像中的子图像进行通用检测

    免责声明 我是计算机视觉菜鸟 我看过很多关于如何在较大图像中查找特定子图像的堆栈溢出帖子 我的用例有点不同 因为我不希望它是具体的 而且我不确定如何做到这一点 如果可能的话 但我感觉应该如此 我有大量图像数据集 有时 其中一些图像是数据集的
  • 如何使用包含代码的“asyncio.sleep()”进行单元测试?

    我在编写 asyncio sleep 包含的单元测试时遇到问题 我要等待实际的睡眠时间吗 I used freezegun到嘲笑时间 当我尝试使用普通可调用对象运行测试时 这个库非常有用 但我找不到运行包含 asyncio sleep 的测
  • 如何使用 Scrapy 从网站获取所有纯文本?

    我希望在 HTML 呈现后 可以从网站上看到所有文本 我正在使用 Scrapy 框架使用 Python 工作 和xpath body text 我能够获取它 但是带有 HTML 标签 而且我只想要文本 有什么解决办法吗 最简单的选择是ext
  • 打破嵌套循环[重复]

    这个问题在这里已经有答案了 有没有比抛出异常更简单的方法来打破嵌套循环 在Perl https en wikipedia org wiki Perl 您可以为每个循环指定标签 并且至少继续一个外循环 for x in range 10 fo
  • 在循环中每次迭代开始时将变量重新分配给原始值(在循环之前定义)

    在Python中 你使用 在每次迭代开始时将变量重新分配给原始值 在循环之前定义 时 也就是说 original 1D o o o for i in range 0 3 new original 1D revert back to orig
  • 使用 Pycharm 在 Windows 下启动应用程序时出现 UnicodeDecodeError

    问题是当我尝试启动应用程序 app py 时 我收到以下错误 UnicodeDecodeError utf 8 编解码器无法解码位置 5 中的字节 0xb3 起始字节无效 整个文件app py coding utf 8 from flask
  • Python:字符串不会转换为浮点数[重复]

    这个问题在这里已经有答案了 我几个小时前写了这个程序 while True print What would you like me to double line raw input gt if line done break else f
  • Pandas Dataframe 中 bool 值的条件前向填充

    问题 如何转发 fill boolTruepandas 数据框中的值 如果是当天的第一个条目 True 到一天结束时 请参阅以下示例和所需的输出 Data import pandas as pd import numpy as np df
  • Geopandas 设置几何图形:MultiPolygon“等于 len 键和值”的 ValueError

    我有 2 个带有几何列的地理数据框 我将一些几何图形从 1 个复制到另一个 这对于多边形效果很好 但对于任何 有效 多多边形都会返回 ValueError 请指教如何解决这个问题 我不知道是否 如何 为什么应该更改 MultiPolygon
  • 使用 OpenPyXL 迭代工作表和单元格,并使用包含的字符串更新单元格[重复]

    这个问题在这里已经有答案了 我想使用 OpenPyXL 来搜索工作簿 但我遇到了一些问题 希望有人可以帮助解决 以下是一些障碍 待办事项 我的工作表和单元格数量未知 我想搜索工作簿并将工作表名称放入数组中 我想循环遍历每个数组项并搜索包含特
  • Python:计算字典的重复值

    我有一本字典如下 dictA unit1 test1 alpha unit1 test2 beta unit2 test1 alpha unit2 test2 gamma unit3 test1 delta unit3 test2 gamm
  • 设置 torch.gather(...) 调用的结果

    我有一个形状为 n x m 的 2D pytorch 张量 我想使用索引列表来索引第二个维度 可以使用 torch gather 完成 然后然后还设置新值到索引的结果 Example data torch tensor 0 1 2 3 4
  • VSCode:调试配置中的 Python 路径无效

    对 Python 和 VSCode 以及 stackoverflow 非常陌生 直到最近 我已经使用了大约 3 个月 一切都很好 当尝试在调试器中运行任何基本的 Python 程序时 弹出窗口The Python path in your
  • 如何从没有结尾的管道中读取 python 中的 stdin

    当管道来自 打开 时 不知道正确的名称 我无法从 python 中的标准输入或管道读取数据 文件 我有作为例子管道测试 py import sys import time k 0 try for line in sys stdin k k
  • glpk.LPX 向后兼容性?

    较新版本的glpk没有LPXapi 旧包需要它 我如何使用旧包 例如COBRA http opencobra sourceforge net openCOBRA Welcome html 与较新版本的glpk 注意COBRA适用于 MATL
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像
  • 您可以在 Python 类型注释中指定方差吗?

    你能发现下面代码中的错误吗 米皮不能 from typing import Dict Any def add items d Dict str Any gt None d foo 5 d Dict str str add items d f
  • Python - 字典和列表相交

    给定以下数据结构 找出这两种数据结构共有的交集键的最有效方法是什么 dict1 2A 3A 4B list1 2A 4B Expected output 2A 4B 如果这也能产生更快的输出 我可以将列表 不是 dict1 组织到任何其他数
  • 改变字典的哈希函数

    按照此question https stackoverflow com questions 37100390 towards understanding dictionaries 我们知道两个不同的字典 dict 1 and dict 2例
  • Pandas 与 Numpy 数据帧

    看这几行代码 df2 df copy df2 1 df 1 df 1 values 1 df2 ix 0 0 我们的教练说我们需要使用 values属性来访问底层的 numpy 数组 否则我们的代码将无法工作 我知道 pandas Data

随机推荐

  • 如何通过ggplot2绘制shapefile?

    我有栅格数据和公园多边形 我想将其重叠在栅格上 当我添加多边形时 它显示在此处 但在 ggplot 上 我如何通过 ggplot2 在栅格数据上添加多边形 公园的多边形就像圆形 我的代码附在下面 r lt raster t volcano
  • 使用 C# 在运行时合并两个对象的最佳方法是什么?

    我有两个对象 我想合并它们 public class Foo public string Name get set public class Bar public Guid Id get set public string Property
  • 获取空字符串并进行验证

    有没有办法让 jsf 验证器处理空字符串 我有一个针对所有输入文本的自定义验证器 我不想也实现 required 标签 而是想让客户处理程序处理空字符串并在支持 bean 中确定该字段是否是强制性的
  • Haskell:从类型推导函数

    所以我今天在玩 Haskell 考虑给定类型自动生成函数定义 例如 函数的定义 twoply a gt b a gt c gt a gt b c 考虑到类型 对我来说这是显而易见的 如果我排除使用undefined a 所以我想出了以下几点
  • Unity 和 Oculus Go。读/写内部存储器

    我正在使用 Unity 构建 Oculus Go 应用程序 我正在尝试在 GO 的内部存储中创建一个 txt 文件 将 HMD 插入 PC 时看到的那个 我尝试了这些不同的路径 但似乎都不起作用 应用程序 持久数据路径 mnt sdcard
  • wpf InteropBitmap 到位图

    我有一个奇怪的问题 我正在尝试检索已在网络浏览器控件中加载的图像 以下代码在 WinForms 应用程序中运行良好 IHTMLControlRange imgRange IHTMLControlRange HTMLBody ie Nativ
  • Spyder 控制台 - 启动内核时发生错误

    Spyder 控制台显示错误消息 启动内核时发生错误 Traceback most recent call last File C Users ABCD Anaconda3 lib runpy py line 193 in run modu
  • 无法从 PreferenceFragment 显示 Snackbar

    我想在 Activity 托管的 PreferenceFragment 中使用 Snackbar onSharedPreferenceChange 偏好 xml
  • 如何获取多列分组中的第一个组?

    在应用 groupby 后 我一直在尝试弄清楚如何仅返回第一组 我的代码如下所示 gb df groupby col1 col2 col3 col4 col5 sum 我想要的是第一个第一组输出 我一直在尝试 get group 方法 但它
  • Facebook 响应错误中的 "error_subcode": 33 是​​什么意思?

    有谁知道这是什么意思error subcode 33 脸书回应错误 我知道这与任务许可有关 但我想百分百确定 我们收到以下错误 error message Unsupported get request Object with ID XXX
  • 如何将 Rails 应用程序从 2.3.5 升级到 3.2.x?

    我有 Rails 2 3 5 应用程序 我想升级到 3 2 x 如何升级到 Rails 3 2 x Thanks 我绝对推荐安装 Rails 升级 gem Rails升级宝石 https github com rails rails upg
  • 库中的 Google Script HTML 表单抛出错误 Uncaught

    我有一个 HTML 格式的库 如下所示 code gs function openDialog SpreadsheetApp getUi showModalDialog HtmlService createHtmlOutputFromFil
  • 正则表达式匹配除特定字符串之外的任何大写字符

    我想匹配所有包含大写字符的行 但忽略字符串A 为了增加复杂性 我想忽略不同字符串之后的所有内容 例如公开评论 以下是应该匹配和不应该匹配的示例 Matches fooBar 富酒吧富 A fooBar fooBar 注释 不匹配 C 不应触
  • 查询 Jira 中当前活动项目的所有问题

    我想创建一个在 Web 界面中处于活动状态的常规查询 为当前选定的项目选择所有问题 例如 如果我有两个项目 PROJ1 PROJ2 要选择 PROJ1 的所有问题 我将创建一个查询 Project PROJ1 但是 如果我有多个项目 我需要
  • Quartz Clustering - 服务器启动时重复触发器

    在集群设置 使用 JDBC 数据存储 中使用 Quartz 2 1 6 和 Spring 3 1 时 我们遇到了一个问题 当前背景 作业和 CRON 触发器在 spring 配置文件中定义 见下文 SchedulerFactoryBean
  • 使用 ColdFusion 将文件上传到 Google Drive

    新更新以获得更好的第二部分 现在进入 308 简历不完整 即使文件应该只是一次上传 我正在使用的基础cfgoogle来自雷 卡姆登 但谷歌已经弃用了文档上传的代码 新标准是可断点续传媒体上传 https developers google
  • 如何在 Windows 中为 Tomcat 设置 JAVA_OPTS?

    我正在尝试设置JAVA OPTS对于 Windows 计算机上的 Tomcat 但如果添加多个变量 我会不断收到错误消息 例如 这有效 set JAVA OPTS Xms512M 但这并不 set JAVA OPTS Xms512M Xmx
  • 如何在 Postgresql 中获取字符串中的当前月份和年份

    我想以字符串格式显示日期作为当前月份名称 字符串 和年份 例如 gt 2019 年 9 月 如何在 PostgreSQL 中为此编写查询 我尝试了这个查询 select date date trunc month current date
  • StackOverflowError 之前有多少次递归调用? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 有条件分箱

    是否可以在数据框中创建一个新列 其中 X 的容器基于另一列的值 下面的例子 AR1 PO1 和 RU1 的容器彼此不同 到目前为止 我只能获取 X 中所有值的容器 import pandas as pd import numpy as np