pandas groupby 对象的聚合

2024-03-09

我正在尝试从数据块的 groupby 对象中聚合一些统计信息。我必须对数据进行分块,因为有很多(1800 万)行。我想找到每个块中每个组的行数,然后将它们加在一起。我可以添加 groupby 对象,但当一项中不存在组时,结果为 NaN。看这个案例:

>>> df = pd.DataFrame({'X': ['A','B','C','A','B','C','B','C','D','B','C','D'],
                       'Y': range(12)})
>>> df
    X   Y
0   A   0
1   B   1
2   C   2
3   A   3
4   B   4
5   C   5
6   B   6
7   C   7
8   D   8
9   B   9
10  C  10
11  D  11
>>> df[0:6].groupby(['X']).count() + df[6:].groupby(['X']).count()
    Y
X    
A NaN
B   4
C   4
D NaN

但我想看到:

>>> df[0:6].groupby(['X']).count() + df[6:].groupby(['X']).count()
    Y
X    
A   2
B   4
C   4
D   2

有没有好的方法可以做到这一点?请注意,在实际代码中,我正在循环遍历每个 groupby 一百万行的分块迭代器。


Call add http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.add.html#pandas.DataFrame.add并通过fill_value=0我猜你可以在分块的同时迭代添加:

In [98]:

df = pd.DataFrame({'X': ['A','B','C','A','B','C','B','C','D','B','C','D'],
                       'Y': np.arange(12)})
df[0:6].groupby(['X']).count().add(df[6:].groupby(['X']).count(), fill_value=0)
Out[98]:
   Y
X   
A  2
B  4
C  4
D  2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pandas groupby 对象的聚合 的相关文章

  • 如何在 Jupyter Notebook 中运行 Python 异步代码?

    我有一些 asyncio 代码在 Python 解释器 CPython 3 6 2 中运行良好 我现在想在具有 IPython 内核的 Jupyter 笔记本中运行它 我可以运行它 import asyncio asyncio get ev
  • 使用 Python 创建 MIDI

    本质上 我正在尝试从头开始创建 MIDI 并将它们放到网上 我对不同的语言持开放态度 但更喜欢使用Python 两种语言之一 如果这有什么区别的话 并且想知道我应该使用哪个库 提前致谢 看起来这就是您正在寻找的 适用于 Python 的简单
  • numpy python 中的“AttributeError:'matrix'对象没有属性'strftime'”错误

    我有一个维度为 72000 1 的矩阵 该矩阵涉及时间戳 我想使用 strftime 如下所示 strftime d m y 为了得到像这样的输出 11 03 02 我有这样一个矩阵 M np matrix timestamps 我使用了
  • 在Python中如何获取字典的部分视图?

    是否有可能获得部分视图dict在Python中类似于pandasdf tail df head 说你有很长一段时间dict 而您只想检查某些元素 开头 结尾等 dict 就像是 dict head 3 To see the first 3
  • Pyqt-如何因另一个组合框数据而更改组合框数据?

    我有一个表 有 4 列 这 4 列中的两列是关于功能的 一个是特征 另一个是子特征 在每一列中 所有单元格都有组合框 我可以在这些单元格中打开txt 我想 当我选择电影院作为功能时 我只想看到子功能组合框中的电影名称 而不是我的 数据 中的
  • Python 是解释型的还是编译型的,或者两者兼而有之?

    据我了解 An 解释的语言是由解释器 将高级语言转换为机器代码然后执行的程序 实时运行和执行的高级语言 它一次处理一点程序 A compiled语言是一种高级语言 其代码首先由编译器 将高级语言转换为机器代码的程序 转换为机器代码 然后由执
  • “一旦获取切片就无法更新查询”。最佳实践?

    由于我的项目的性质 我发现自己不断地从查询集中取出切片 如下所示 Thread objects filter board requested board id order by updatedate 10 但这给我带来了实际对我选择的元素进
  • 如何在VIM中设置文件的正确路径?

    每当我击中 pwd在 vim 中命令总是返回路径C Windows system32 即使我在桌面上的 Python 文件中 所以每当我跑步时 python 命令返回 python can t open file Users myname
  • 如何在Python中高效地添加稀疏矩阵

    我想知道如何在Python中有效地添加稀疏矩阵 我有一个程序 可以将大任务分解为子任务 并将它们分配到多个 CPU 上 每个子任务都会产生一个结果 一个 scipy 稀疏矩阵 格式为 lil matrix 稀疏矩阵尺寸为 100000x50
  • Alembic:如何迁移模型中的自定义类型?

    My User模型是 class User UserMixin db Model tablename users noinspection PyShadowingBuiltins uuid Column uuid GUID default
  • 如何使用 Bokeh 动态隐藏字形和图例项

    我正在尝试在散景中实现复选框 其中每个复选框应显示 隐藏与其关联的行 我知道可以通过图例来实现这一点 但我希望这种效果同时在两个图中发生 此外 图例也应该更新 在下面的示例中 出现了复选框 但不执行任何操作 我显然不明白如何更新用作源的数据
  • GradientTape 根据损失函数是否被 tf.function 修饰给出不同的梯度

    我发现计算的梯度取决于 tf function 装饰器的相互作用 如下所示 首先 我为二元分类创建一些合成数据 tf random set seed 42 np random seed 42 x tf random normal 2 1 y
  • Python:我不明白 sum() 的完整用法

    当然 我明白你使用 sum 与几个数字 然后它总结所有 但我正在查看它的文档 我发现了这一点 sum iterable start 第二个参数 start 的作用是什么 这太尴尬了 但我似乎无法通过谷歌找到任何示例 并且对于尝试学习该语言的
  • 使用 Conda 更新特定模块会删除大量软件包

    我最近开始使用 Anaconda Python 发行版 因为它提供了许多开箱即用的数据分析库 使用 conda 创建环境和安装软件包也轻而易举 但是当我想更新 Python 本身或任何其他模块时 我遇到了一些严重的问题 我事先被告知我的很多
  • `pyqt5'错误`元数据生成失败`

    我正在尝试安装pyqt5使用带有 M1 芯片和 Python 3 9 12 的 mac 操作系统 我怀疑M1芯片可能是原因 我收到一个错误metadata generation failed 最小工作示例 directly in the t
  • Django - 提交具有同一字段多个输入的表单

    预警 我对 Django 以及一般的 Web 开发 非常陌生 我使用 Django 托管一个基于 Web 的 UI 该 UI 将从简短的调查中获取用户输入 通过我用 Python 开发的一些分析来提供输入 然后在 UI 中呈现这些分析的可视
  • 附加两个具有相同列、不同顺序的数据框

    我有两个熊猫数据框 noclickDF DataFrame 0 123 321 0 1543 432 columns click id location clickDF DataFrame 1 123 421 1 1543 436 colu
  • Python问题:打开和关闭文件返回语法错误

    大家好 我发现了这个有用的 python 脚本 它允许我从网站获取一些天气数据 我将创建一个文件和其中的数据集 有些东西不起作用 它返回此错误 File
  • bs4 `next_sibling` VS `find_next_sibling`

    我在使用时遇到困难next sibling 并且类似地与next element 如果用作属性 我不会得到任何返回 但如果用作find next sibling or find next 然后就可以了 来自doc https www cru
  • 使用Multiprocessing和Pool时如何访问全局变量?

    我试图避免将变量冗余地传递到dataList e g 1 globalDict 2 globalDict 3 globalDict 并在全球范围内使用它们 global globalDict然而 在下面的代码中并不是这样做的解决方案 是否有

随机推荐

  • Angular2 http获取请求结果变成404

    尝试在 Angular 2 TypeScript 中运行简单的 http get 调用 给予https angular io docs ts latest tutorial toh pt6 html https angular io doc
  • Java 8 的默认垃圾收集器

    Java 8 的默认垃圾收集器是什么 当我检查 JMX Beans 时 它们显示它是新一代的并行收集器和老一代的旧串行收集器 默认垃圾收集器 Java 7 并行 GC Java 8 并行 GC Java 9 G1 GC Java 10 G1
  • 对嵌套列表内的列表进行排序

    我有一个嵌套列表 9 8 7 8 7 6 7 6 5 6 5 4 5 4 3 4 3 2 3 2 1 我需要对列表中的列表进行排序才能创建 7 8 9 6 7 8 5 6 7 4 5 6 3 4 5 2 3 4 1 2 3 我该怎么做呢 你
  • R 闪亮的 AngularJS 工作

    我正在创建一个仪表板 其中 R 和 D3 与库 闪亮 一起运行 这工作得非常好 现在我想将 D3 代码转换为模块化对象 这将节省我大量的编码并使其可供其他人使用 我的想法是做到这一点
  • 按自定义字段日期列出自定义帖子类型

    我正在使用 Wordpress 和 WP Types 插件 需要按自定义字段日期对 CPT 进行排序 这工作正常 args array post type gt parties paged gt paged meta key gt wpcf
  • 在 Windows 7 上使用 powershell 2.0 下载文件

    这是我下载文件的脚本 我替换了下载的网址 因为它是一个私有云站点 我到处搜索 他们都说这是在旧版本的 PS 中下载的正确方法 但我不断收到错误 Exception calling DownloadFile with 2 argument s
  • 有 jQuery 图像和视频幻灯片库吗? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有谁知道有一个 jQuery 库可以用来制作图像幻灯片 并在幻灯片查看区域中嵌入视频 从而带来额外的好处
  • 如何仅与syncdb同步自定义权限?

    是否可以让manage pysyncdb命令仅将自定义权限同步到auth permission桌子 我不希望为应用程序模型安装默认的三个权限 即foo add bar foo change bar foo delete bar 我在模型类中
  • 如何根据泛型类型执行泛型结构体方法的不同实现?

    我有一个通用结构 我在扩展中的结构中添加了一个方法 如下所示 struct CustomStruct
  • JavaScript 模板继承

    在Django框架中 网页模板可以继承其他模板 在子模板中 您定义代码块来覆盖父模板中类似名称的块 我猜还有其他后端模板系统也以这种方式工作 但 Django 是我熟悉的一个 现有的 javascript 模板系统是否支持 django 风
  • Emacs 插入居中注释块

    我想为 emacs 创建一个宏 它将插入一个带有一些居中文本的乳胶注释块 例如 Comment 1 Comment 2 Commenttext 3 这可
  • 电子邮件地址输入验证

    有没有办法在 wpf C 中对电子邮件地址进行文本框输入验证 正则表达式或验证表达式或任何可以提供帮助的内容 最好提供代码示例和一些说明 在 text changed 事件中 您可以将文本框的值传递给辅助类 public static cl
  • PHP Curl 脚本每 10 分钟从远程服务器提取数据

    我正在尝试创建一个 PHP 脚本 该脚本从远程服务器提取 xml 数据 文本和图像 并将其插入本地数据库中 我需要每 10 分钟左右运行一次此脚本 并覆盖数据库中的现有数据 如果大约一分钟后没有收到服务器的响应 我希望请求中止 直到下一个脚
  • 如果可能,使用 AJAX 从 URL 获取 JSON 数据

    我想从下面的 URL 获取 JSON 数据 并以任何可能的方式在我的网页中使用它 可以吗 http fantasy premierleague com web api elements 100 http fantasy premierlea
  • AWS Elastic Beanstalk 504 网关超时

    我有一个在 AWS Elastic Beanstalk 上运行的节点服务器 我的一个端点接受巨大的有效负载 并且该函数本身相当缓慢且冗长 可能需要长达 10 多分钟的时间 由于业务需求 它必须保留为单个 HTTP POST 并且不能拆分得更
  • 错误通知:无法展开 RemoteViews:StatusBarNotification。在 Android 牛轧糖上

    I use OneSignal SDK显示通知 我这样做是在OneSignalPushService java OneSignalPushService java public class OneSignalPushService exte
  • Chrome 扩展配置代理用户名和密码

    我正在创建一个 chrome 扩展来动态更改代理设置 但在 chrome proxy settings set 函数中 无法配置代理的用户名和密码 因此 每次设置更改后我都必须手动输入凭据 但我发现在代理自动验证 https chrome
  • 为什么我在看似相似的 R 代码中遇到函数错误?

    首先 这是一个非常基本的问题 我不确定如何表达 如果问题是重复的 尽管我使用我认为可能合适的措辞进行了检查 我显然会撤回并欣赏该链接 第二 我是sure有一种更简单的方法可以完成我正在尝试的事情 但又不想偏离轨道 好的 我试图从 0 1 矩
  • 将主机字节顺序(小端)中的字符串转换为网络字节顺序(大端)

    我有一个十六进制字符串 内容如下18000000该字符串采用主机字节顺序 小端 我需要将其转换为网络字节顺序 大端 生成的十六进制字符串将是00000018 总结一下我需要转换 18000000 to 00000018 我如何在 PHP 中
  • pandas groupby 对象的聚合

    我正在尝试从数据块的 groupby 对象中聚合一些统计信息 我必须对数据进行分块 因为有很多 1800 万 行 我想找到每个块中每个组的行数 然后将它们加在一起 我可以添加 groupby 对象 但当一项中不存在组时 结果为 NaN 看这