使用 Pandas GroupBy 和 size()/count() 生成聚合的 DataFrame

2024-01-11

所以我目前有一个名为的 DataFramedf这些都不在了:

date                       tag
2011-02-18 12:57:00-07:00  A
2011-02-19 12:57:00-07:00  A
2011-03-18 12:57:00-07:00  B
2011-04-01 12:57:00-07:00  C
2011-05-19 12:57:00-07:00  Z
2011-06-03 12:57:00-07:00  A
2011-06-05 12:57:00-07:00  A
...

我正在尝试按标签和日期(年/月)进行 GroupBy,所以它看起来像:

date     A  B  C  Z
2011-02  2  0  0  0
2011-03  0  1  0  0
2011-04  0  0  1  0
2011-05  0  0  0  1
2011-06  2  0  0  0
...

我已经尝试过以下方法,但它并没有完全给我我想要的。

grouped_series = df.groupby([["%s-%s" % (d.year, d.month) for d in df.date], df.tag]).size()

我知道存在哪个标签等。任何帮助将不胜感激。

更新(对于展望未来的人):

最终保留日期时间,而不是字符串格式。相信我,这在绘图时会更好:

grouped_df = df.groupby([[ datetime.datetime(d.year, d.month, 1, 0, 0) for d in df.date], df.name]).size()
grouped_df = grouped_df.unstack().fillna(0)

你可以用unstack() http://pandas.pydata.org/pandas-docs/dev/generated/pandas.DataFrame.unstack.html and fillna() http://pandas.pydata.org/pandas-docs/dev/generated/pandas.DataFrame.fillna.html方法:

>>> g = df.groupby([["%s-%s" % (d.year, d.month) for d in df.date], df.tag]).size()
>>> g
        tag
2011-2  A      2
2011-3  B      1
2011-4  C      1
2011-5  Z      1
2011-6  A      2
dtype: int64
>>> g.unstack().fillna(0)
tag     A  B  C  Z
2011-2  2  0  0  0
2011-3  0  1  0  0
2011-4  0  0  1  0
2011-5  0  0  0  1
2011-6  2  0  0  0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Pandas GroupBy 和 size()/count() 生成聚合的 DataFrame 的相关文章

  • KFold 和 ShuffleSplit CV 有什么区别?

    看起来 KFold 每次迭代对象时都会生成相同的值 而 Shuffle Split 每次都会生成不同的索引 它是否正确 如果是这样 其中一个相对于另一个有什么用处 cv cross validation KFold 10 n folds 2
  • Python:记录垃圾收集器

    我有一个 python 应用程序 有一些性能问题 我想将垃圾收集器的事件 特别是何时调用 添加到我的日志中 是否可以 thanks http docs python org library gc html gc set debug http
  • 子进程改变目录

    我想在子目录 超级目录中执行脚本 我需要首先进入该子目录 超级目录 我无法得到subprocess进入我的子目录 tducin localhost Projekty tests ve python Python 2 7 4 default
  • Python 中的安全解除引用

    Groovy 有一个很好的安全取消引用运算符 这有助于避免 NullPointerExceptions variable method The method仅当以下情况时才会被调用variable is not null 有没有办法在 Py
  • 为什么导入 pdb 时出现此错误? “模块”对象没有属性“ascii_letters”

    尝试调试我的代码 我正在导入库pdb import sys from subprocess import check call import pdb functions if name main Code 我收到此错误 File reg p
  • Pyspark 数据框逐行空列列表

    我有一个 Spark 数据框 我想创建一个新列 其中包含每行中具有 null 的列名称 例如 原始数据框是 col 1 col 2 col 3 62 45 null 62 49 56 45 null null null null null
  • 在 Flask (WSGI) 中使用全局单例,我是否需要担心竞争条件? [复制]

    这个问题在这里已经有答案了 Flask 的 hello world 演示是 from flask import Flask app Flask name app route def hello return Hello World if n
  • 如何在 Scala 中将 DataFrame 模式写入文件

    我有一个 DataFrame 它从一个巨大的 json 文件加载并从中获取架构 该架构基本上大约有 1000 列 我希望将 printSchema 的相同输出保存在文件中而不是控制台中 有任何想法吗 如果您在本地环境中工作 您可以执行以下操
  • Python 视频框架

    我正在寻找一个 Python 框架 它将使我能够播放视频并在该视频上绘图 用于标记目的 我尝试过 Pyglet 但这似乎效果不是特别好 在现有视频上绘图时 会出现闪烁 即使使用双缓冲和所有这些好东西 而且似乎没有办法在每帧回调期间获取视频中
  • 一起使用 Flask 和 Tornado?

    我是以下的忠实粉丝Flask 部分是因为它很简单 部分是因为它有很多扩展 http flask pocoo org extensions 然而 Flask 是为了在 WSGI 环境中使用而设计的 而 WSGI 不是非阻塞的 所以 我相信 它
  • 参数验证,Python 中的最佳实践[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 让我们举一个 API 的例子 def get abs directory self path if os path isdir path ret
  • 求解不等式系统时“多项式错误:仅允许使用单变量多项式”

    我想找到以下两个常数的区间cons1 and cons2我写了下面的代码 from sympy import Poly from sympy import Abs from sympy solvers inequalities import
  • 使用函数参数作为 R 中新数据框的名称

    这很简单 但我已经搜索并未能找到这个小问题的解决方案 我想使用函数的参数作为新数据框的名称 例如 assign dataset lt function dataname x lt c 1 2 3 y lt c 3 4 5 dataname
  • 大型数据集上的 Sklearn-GMM

    我有一个很大的数据集 我无法将整个数据放入内存中 我想在这个数据集上拟合 GMM 我可以用吗GMM fit sklearn mixture GMM 重复小批量数据 没有理由重复贴合 只需随机采样您认为机器可以在合理时间内计算的尽可能多的数据
  • 从另一个 python 脚本获取返回信息

    我在 Linux 上 我有一个 python 脚本 我想从另一个 python 脚本调用它 我不想将其作为模块导入 为了一层安全性 现在为了学术练习 因为我想弄清楚这一点 我实际上想让一个脚本使用 os system 或另一个类似的函数 并
  • 如何使用Featuretools按列值从单个数据框中的多个列创建特征?

    我正在尝试根据之前的结果来预测足球比赛的结果 我在 Windows 上运行 Python 3 6 并使用 Featuretools 0 4 1 假设我有以下代表结果历史记录的数据框 原始数据框 https i stack imgur com
  • 在Python中从日期时间中减去秒

    我有一个 int 变量 它实际上是秒 让我们调用这个秒数X 我需要得到当前日期和时间 以日期时间格式 减去的结果X秒 Example If X是 65 当前日期是2014 06 03 15 45 00 那么我需要得到结果2014 06 03
  • 在Python 3.2中,我可以使用http.client打开并读取HTTPS网页,但urllib.request无法打开同一页面

    我想打开并阅读https yande re https yande re with urllib request 但我收到 SSL 错误 我可以使用以下方式打开并阅读页面http client用这个代码 import http client
  • 从数据集的给定日期范围中提取属于一天的数据

    我有一个数据集 日期范围为 2018 年 1 月 12 日到 8 月 3 日 其中包含一些值 维数为my df数据框是 my df shape 9752 2 每行包含半小时频率 第一行开始于2018 01 12 my df iloc 0 D
  • 从 pandas 数据框中绘制堆积条形图

    我有数据框 payout df head 10 复制以下 Excel 绘图的最简单 最智能和最快的方法是什么 我尝试过不同的方法 但无法让一切都到位 Thanks 如果您只想要一个堆积条形图 那么一种方法是使用循环来绘制数据框中的每一列 并

随机推荐

  • DataGridView显示行标题单元格

    我正在尝试显示链接到 DataTable 的简单 DataGridView 并且最终我希望 DataTable 中的第一列成为 DataGridView 的行标题单元格 此时 我将满足于在行标题单元格中包含任何值 我可以显示带有所有行和列以
  • 标识符未定义

    我使用 VS2012 Express 用 C 编写了以下代码 void ac search uint num patterns uint pattern length const char patterns uint num records
  • 卷曲远程图像并调整其大小

    我使用此脚本来下载远程图像并调整其大小 在调整大小部分出现问题 它是什么
  • Android 使用自签名证书连接到服务器

    编辑 下面的代码工作正常 没有错误 没有异常 我知道关于这个主题的大量问题 以及谷歌想到的许多博客 我已通读它们并设法想出我将要解释的内容 我的疑问在于 我的方法正确吗 它有副作用吗 以及在我解释我的方法时最好提出的另一个问题 我基于此方法
  • NIO getParentFile().mkdir() [重复]

    这个问题在这里已经有答案了 有没有一种方法可以一次性创建文件和目录 如下所示 使用 Java 7 和 NIO 路径和文件静态方法 在哪里您不必键入路径 然后将文件分成单独的行 代码 File file new File Library te
  • 当调用clock_gettime()时返回的tv_nsec字段实际上可能超过一秒吗?

    当你调用clock gettime 它返回一个 timespec 结构 struct timespec time t tv sec seconds long tv nsec nanoseconds 我在手册页中没有找到 tv nsec 不会
  • 从连续的字序列中提取任意范围的位的最有效方法是什么?

    假设我们有一个std vector 或任何其他序列容器 有时它是一个双端队列 它存储uint64 t元素 现在 让我们将该向量视为一个序列size 64连续的位 我需要找到由给定的位组成的单词 begin end 范围 鉴于end begi
  • UItableVIew 中的效果或动画

    当我单击 tableView 时 它会显示类似这样的内容以显示详细信息 我怎样才能做到这一点 我认为你需要的是一个类似于手风琴的实现 以下是一些示例参考 您可以从这里开始 如何为 iPhone SDK 应用程序实现手风琴视图 https s
  • 一个由两个弹性项目组成的弹性盒网格,其中一个弹性项目旁边有一个[重复]

    这个问题在这里已经有答案了 我想在左侧放置一个 div 在右侧放置两个 div 这bottomright应始终低于topRight分区这topRight是唯一一个高度可变的 div 我目前正在尝试使用flexbox你可以在我下面的代码中看到
  • OpenCV 上的 Libpng 冲突?

    我正在尝试使用以下代码在 XCode 4 4 Mountain Lion 上打开 png 文件 适用于 jpg 文件 Mat image imread Users user name Desktop result png imshow im
  • Kafka Connect 不支持主题策略

    Context 我编写了几个小代码卡夫卡连接 https docs confluent io current connect index html连接器 一个每秒生成随机数据 另一个将其记录在控制台中 它们集成了一个模式注册表 https
  • 单击后退按钮两次以使用 rxjava 退出活动

    寻找一种微妙的接收方法来退出活动 同时按两次后退按钮 boolean doubleBackToExitPressedOnce false Override public void onBackPressed if doubleBackToE
  • content.select() 不适用于 元素

    我正在尝试制作一个按钮来选择 a 的内容 code 元素 但是 它不起作用 我得到了 content select 不是一个函数 div div code
  • 基于输入的变量

    Python版本 3 5 所以我想知道如何根据用户的输入设置变量 例如 如果用户要回答7对此 居民 输入 你家有多少人住 编辑 如果他们输入7 我怎样才能询问每个人的名字 Thanks def get int prompt while Tr
  • 如何进行 FST(有限状态换能器)组合

    考虑以下 FST T1 0 1 a b 0 2 b b 2 3 b b 0 0 a a 1 3 b a T2 0 1 b a 1 2 b a 1 1 a d 1 2 a c 如何对这两个 FST 即 T1 o T2 执行组合操作 我看到了一
  • 使用 CTE 索引视图

    所以 我刚刚发现 SQL Server 2008 不允许您在定义中使用 CTE 索引视图 但它允许您alter要添加的查询with schemabinding在视图定义中 这有充分的理由吗 出于某种我不知道的原因 这是否有意义 我的印象是W
  • 如果 NSAllowsArbitraryLoads 设置为 YES,App Store 是否会拒绝提交?

    The new ATS https developer apple com library prerelease ios technotes App Transport Security Technote iOS 9 涉及导致许多 http
  • Django HTSQL TransactionManagementError 与 sqlite 以及 PostgreSQL 后端

    我正在尝试将 HTSQL 用于我的 Django 项目之一 为此 我遵循了给出的程序HERE http htsql org blog 2012 introducing django gateway html用于提供 HTSQL Django
  • 发送/接收原始以太网帧

    我必须在 Linux 上编写一个应用程序 该应用程序需要与具有自定义以太网类型的设备进行通信 即使在如何编写这样的应用程序的SO中也有很多解决方案 缺点是需要 root 访问权限 据我所知 之后释放 root 权限可能是一种选择 但这会带来
  • 使用 Pandas GroupBy 和 size()/count() 生成聚合的 DataFrame

    所以我目前有一个名为的 DataFramedf这些都不在了 date tag 2011 02 18 12 57 00 07 00 A 2011 02 19 12 57 00 07 00 A 2011 03 18 12 57 00 07 00