将分组 zscore 列添加到 pandas 数据框中

2023-11-25

我可以将一列插入到数据框中,对另一列进行 z 评分,如下所示:

[1] df.insert(<loc>, column='ZofA', value=(df['A']-df['A'].mean())/df['A'].std())

我可以对由另外 2 列分组的列进行简单的缩减,如下所示:

[2] df.groupby(['C1', 'C2'])['A'].mean()

我尝试用 [1] 中的 zscore 函数替换 [2] 中的简单的mean()函数,但不知道如何做到这一点,包括使用 .apply ——例如这失败了:

[3] df.groupby(['C1', 'C2']).apply((df['A']-df['A'].mean())/df['A'].std())

所以我的第一个问题是我显然不知道如何创建带有分组的 zscore 列。

我的第二个问题是我想结合(1)将新列插入到数据框(“Z​​ofA”)中,该数据框保存来自另一列(“A”)的z分数,与(2)在定义的组内计算这些z分数由另外两列('C1','C2')。 (3) 我想在一个 df.insert() 语句中完成所有这些操作。我是否只是搞乱了我的括号和方括号之类的东西,或者我是否试图在一个声明中做太多事情?谢谢!


感谢您指向文档的指针。对于任何好奇的人,我想我会发布解决方案。首先,将 zscore 计算放入 lambda 中:

zscore = lambda x: (x - x.mean()) / x.std()

神奇的成分是.transform。只需要这样写插入语句:

df.insert(<loc>, 'ZofA', df.groupby(['C1', 'C2'])['A'].transform(zscore))

解决方案确实在“Group By: split-apply-combine”文档中。您只需向下滚动大约一半到“转换”部分。我忽略了有关日期键的内容,只是将分组列直接插入到 groupby 语句中。

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

将分组 zscore 列添加到 pandas 数据框中 的相关文章

随机推荐

  • PySpark 根据名称将列表分解为多列

    您好 我正在处理一种稍微困难的文件格式 我正在尝试清理该格式以供将来处理 我一直在使用 Pyspark 将数据处理成数据帧 该文件看起来类似于 AA 1234 ZXYW BB A 890 CC B 321 AA 1234 LMNO BB D
  • 将文件夹从主包复制到 iPhone 中的文档目录

    我有一个应用程序 其中我的主包中有一个名为 Images 的文件夹 在此文件夹中还有另一个名为 Images1 的文件夹 其中包含一些图像 当我的应用程序启动时 我想要文档目录中的文件夹 图像 我想从文件夹 Images1 中获取图像 但我
  • 弦乐实习

    在下面的代码中 我正在检查对象引用的相等性 string x Some Text string y Some Other Text string z Some Text Console WriteLine object ReferenceE
  • 转换为 ARC - LLVM 编译器 3.0 错误

    我打开了我的一个旧项目并选择Convert to Objective C ARC从编辑 重构菜单 我收到以下错误 Apple LLVM compiler 3 0 Error Error in format of file Users myU
  • XPath:从子节点获取父节点

    我需要获取子节点的父节点title 50 目前我只使用 title 50 我怎样才能得到它的父母 结果应该是store node
  • 如何使用 Webpack 和 Angular2 包含外部 css 文件?

    我正在尝试使用 Webpack 添加对 Angular2 中 CSS 文件的外部引用 我的CSS定义为 test css loader style loader css loader 在我的 webpack config js 文件中 在打
  • Ruby:将转义字符串写入 YAML

    下列 require yaml test I m a b d string File open test yaml w do out out write test to yaml end 输出 this is a b d string 我怎
  • Lucene.Net 写/读同步

    我可以写 与IndexWriter 在打开阅读时将新文档放入索引 使用IndexReader 或者我必须在写作之前关闭阅读 我可以阅读 搜索文档吗 使用IndexReader 在索引中 当它打开用于写入时 与IndexWriter 或者我必
  • 扭曲应用程序的 Web 界面

    我有一个用 Twisted 编写的应用程序 我想添加一个 Web 界面来控制和监视它 我需要大量的动态页面来显示当前状态和配置 因此我希望有一个框架至少提供一种具有继承和一些基本路由的模板语言 因为我正在使用 Twisted 无论如何我想使
  • Firebase 更改显示在谷歌登录警报上的应用程序名称?

    我有一个 firebase 项目 但不知何故我输错了应用程序名称 有没有办法更改谷歌登录警报上显示的应用程序名称 您应该更改项目中的产品名称
  • 如何在 ASP.NET Core 中的自定义 TagHelper 中渲染 Razor 模板?

    我正在创建一个自定义 HTML 标记帮助程序 public class CustomTagHelper TagHelper HtmlAttributeName asp for public ModelExpression DataModel
  • 如何删除名称以“-”开头的文件[重复]

    这个问题在这里已经有答案了 在脚本中出现错误后 我最终得到了一个名称以破折号开头的文件 myfile txt 到目前为止我尝试过 rm myfile txt rm illegal option m usage rm f i dPRrvW f
  • 使用 this-> 访问成员是否有任何开销?

    当访问某个类的成员时 我可以使用例如 this gt myVar 10 或者我可以写 myVar 10 我喜欢用this gt 因为它显式声明该变量是此类的成员 但是与仅使用变量名本身相比 它是否会导致任何开销 作为替代方案 我可以向变量添
  • 从 data.frame 或 data.table 构建方形邻接矩阵

    我正在尝试建立一个方形邻接matrix from a data table 这是我已经拥有的可重现的示例 require data table require plyr require reshape2 Build a mock data
  • Locale.ITALY 和 Locale.ITALIAN 有什么不同

    和有什么区别Locale国家和语言 例如Locale ITALY and Locale ITALIAN 我在哪里可以找到其他语言环境的所有这些差异 我应该什么时候使用每一个 是否可以开发我们所需的语言环境 如何 Locale ITALIAN
  • Laravel 4 Illuminate \ Database \ Eloquent \ MassAssignmentException 错误

    嘿 我已经在那里搜索了很多答案 但无法解决这个问题 这是我的迁移代码
  • 在 ASP.NET c# 中查找日期 10 月的最后一个星期日

    嗨 有没有办法找出 ASP NET C 中十月最后一个星期日的日期 我正在使用 net 2 0 不需要为此运行循环 private static DateTime GetLastWeekdayOfMonth DateTime date Da
  • 在 .NET 中创建和部署 ActiveX 控件

    由于显然没有可以接受位图粘贴的 Flash 控件 我想考虑自己写一个 但我不想使用 Flash 所以我考虑使用 NET 现在我相信可以在浏览器中下载并运行的本机代码控件的正确术语是 ActiveX 控件 所以我的问题是 我可以用 NET 创
  • FBSDK 空登录视图

    自从升级到最新的 Xcode 后 我在尝试通过 FBSDK 登录时遇到了一些问题FBSDKLoginManager Safari 中的登录窗口会弹出 但它保持白色 空视图 没有导航项或内容 控制台返回以下内容 ViewService 无法获
  • 将分组 zscore 列添加到 pandas 数据框中

    我可以将一列插入到数据框中 对另一列进行 z 评分 如下所示 1 df insert