Pandas 两个分组的 DataFrame 列的简单关联

2024-03-12

有没有一种好方法来获取两个分组的 DataFrame 列的简单关联?

看来无论熊猫怎样.corr()函数想要返回一个相关矩阵。例如。,

i = pd.MultiIndex.from_product([['A','B','C'], np.arange(1, 11, 1)], names=['Name','Num'])
test = pd.DataFrame(np.random.randn(30, 2), i, columns=['X', 'Y'])
test.groupby(['Name'])['X','Y'].corr()

returns

               X         Y
Name                      
A    X  1.000000  0.152663
     Y  0.152663  1.000000
B    X  1.000000 -0.155113
     Y -0.155113  1.000000
C    X  1.000000  0.214197
     Y  0.214197  1.000000

但显然我只对非对角线项感兴趣。计算四个值然后尝试选择我想要的值似乎很笨拙,如下所示

test.groupby(['Name'])['X','Y'].corr().ix[0::2,'Y']

to get

A     X    0.152663
B     X   -0.155113
C     X    0.214197

我期待类似的东西test.groupby('Name')['X'].corr('Y')工作,但它没有,当你通过系列本身时(test['Y'])它变得更慢。在这一点上,似乎 apply 是最好的选择:

test.groupby('Name').apply(lambda df: df['X'].corr(df['Y']))
Out: 
Name
A   -0.484955
B    0.520701
C    0.120879
dtype: float64

这会迭代每个组并在每个分组的 DataFrame 中应用 Series.corr。差异是由于没有设置随机种子而产生的。

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

Pandas 两个分组的 DataFrame 列的简单关联 的相关文章

  • DataFrame 中的字符串,但 dtype 是对象

    为什么 Pandas 告诉我我有对象 尽管所选列中的每个项目都是一个字符串 即使在显式转换之后也是如此 这是我的数据框
  • 对打开文件的脚本进行单元测试

    我编写了一个脚本 它打开一个文件 读取内容并进行一些操作和计算 并将它们存储在集合和字典中 我该如何为这样的事情编写单元测试 我的问题具体是 我会测试文件是否打开 文件很大 这是unix字典文件 我如何对计算进行单元测试 我真的必须手动计算
  • 如何在“python setup.py test”中运行 py.test 和 linter

    我有一个项目setup py文件 我用pytest作为测试框架 我还在我的代码上运行各种 linter pep8 pylint pydocstyle pyflakes ETC 我用tox在多个 Python 版本中运行它们 并使用以下命令构
  • 返回不包括指定键的字典副本

    我想创建一个函数 返回字典的副本 不包括列表中指定的键 考虑这本词典 my dict keyA 1 keyB 2 keyC 3 致电without keys my dict keyB keyC 应该返回 keyA 1 我想用一行简洁的字典理
  • pandas 两个数据框交叉连接[重复]

    这个问题在这里已经有答案了 我找不到有关交叉联接的任何内容 包括合并 联接或其他一些内容 我需要使用 my function 作为 myfunc 处理两个数据帧 相当于 for itemA in df1 iterrows for itemB
  • Matplotlib 将颜色图 tab20 更改为三种颜色

    Matplotlib 有一些新的且非常方便的颜色图 选项卡颜色图 https matplotlib org examples color colormaps reference html 我错过的是生成像 tab20b 或 tab20c 这
  • Docker 日志中的 Python 异常标记为流:stdout

    我想解析和处理来自 docker 容器的所有错误 但当我期望 stderr 时 Python 异常标记为 stdout 举个简单的例子app py raise Exception 然后我在 docker 容器中运行这个文件 但在 var l
  • 如何使用to_sql将pandas数据帧写入oracle数据库?

    我是一个新的oracle学习者 我正在尝试将 pandas 数据帧写入 oracle 表中 经过网上研究 我发现代码本身很简单 但我不知道为什么我的代码不起作用 我已经从本地文件中读取了 pandas 数据框 import cx Oracl
  • PermanentTaskFailure:“模块”对象没有属性“迁移”

    我在 google appengine 上使用 Nick Johnson 的批量更新库 http blog notdot net 2010 03 Announcing a robust datastore bulk update utili
  • python 中的基本矩阵转置

    我尝试了 python 中矩阵转置的最基本方法 但是 我没有得到所需的结果 接下来是代码 A 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 print A def TS A B A for i in range len A
  • Scikit Learn - K-Means - 肘部 - 标准

    今天我想学习一些关于 K means 的知识 我已经了解该算法并且知道它是如何工作的 现在我正在寻找正确的 k 我发现肘部准则作为检测正确的 k 的方法 但我不明白如何将它与 scikit learn 一起使用 在 scikit learn
  • dask allocate() 或 apply() 中的变量列名

    我有适用于pandas 但我在将其转换为使用时遇到问题dask 有一个部分解决方案here https stackoverflow com questions 32363114 how do i change rows and column
  • 本地设置的 Cython 编译器指令是否影响一个或所有函数?

    我正在努力使用 Cython 加速一些 Python Numpy 代码 并且对 本地 设置 如定义的here http docs cython org en latest src reference compilation html在文档中
  • scrapy python 请求未定义

    我在这里找到了答案 code for site in sites Link site xpath a href extract CompleteLink urlparse urljoin response url Link yield Re
  • Melt() 函数复制数据集

    我有一个这样的表 id name doggo floofer puppo pupper 1 rowa NaN NaN NaN NaN 2 ray NaN NaN NaN NaN 3 emma NaN NaN NaN pupper 4 sop
  • 字母尺度和随机文本上的马尔可夫链

    我想使用 txt 文件中的一本书中的字母频率生成随机文本 以便每个新字符 string lowercase 取决于前一个 如何使用马尔可夫链来做到这一点 或者使用每个字母都有条件频率的 27 个数组更简单 我想使用来自的字母频率生成随机文本
  • 获取运行云功能的运行时服务帐户

    有没有办法以编程方式从云功能获取运行时服务帐户的电子邮件 我知道我可以 猜测 默认的 App Engine 帐户 因为它始终是 appspot gserviceaccount com 但这不是我想要的 我本来期待有一些环境变量 https
  • 如何抑制 Pandas Future 警告?

    当我运行该程序时 Pandas 每次都会给出如下所示的 未来警告 D Python lib site packages pandas core frame py 3581 FutureWarning rename with inplace
  • Python - 打印漂亮的 XML 为空标签文本创建开始和结束标签

    我正在编写一个 python 应用程序 它创建一个 ElementTree XML 然后使用 minidom 的 toprettyxml 将其写入文件 final tree minidom parseString ET tostring r
  • 从 Flask 中的 S3 返回 PDF

    我正在尝试在 Flask 应用程序的浏览器中返回 PDF 我使用 AWS S3 来存储文件 并使用 boto3 作为与 S3 交互的 SDK 到目前为止我的代码是 s3 boto3 resource s3 aws access key id

随机推荐

  • iOS - NSJSONSerialization:无法将数据转换为字符周围的字符串

    我在解析 JSON 时收到此错误 NSDictionary json NSJSONSerialization JSONObjectWithData data options NSJSONReadingMutableContainers er
  • 最快的 ArangoDB 朋友的朋友查询是多少(带计数)

    我正在尝试使用 ArangoDB 获取朋友的朋友列表 不仅仅是一个基本的朋友的朋友列表 我还想知道用户和朋友的朋友有多少个共同的朋友并对结果进行排序 经过多次尝试 重新 编写性能最佳的 AQL 查询 我最终得到的是 LET friends
  • 为什么这段代码会破坏内存?

    这是一个相当新手的问题 应该很快就能回答 基本上 在第一次调用之后Printf in echo 内容args已损坏 在我看来 我错误地传递了指针 但不明白为什么 define MAX PRINT OUTPUT 4096 void Echo
  • 调用 GetSecretValue 操作时出现 AWS (ResourceNotFoundException):Secrets Manager 找不到指定的密钥

    使用机密 ARN 时出现 ResourceNotFoundException 尝试仅使用秘密名称获取秘密 不起作用 尝试使用 ARN 获取机密 不起作用 我已经检查了我所承担的角色的策略 据我所知 SM 是这样设置的 JSON 格式 sec
  • FileStream 响应显示 � 而不是拉丁字符

    请阅读整个问题 我有一个 C ASP NET MVC 中的应用程序 Ajax 调用返回 PDF 文件的函数FileStream有回应STREAM A 因此 它无法正确呈现文件 打开时该文件只是空白页面 其中没有任何文本 Filestream
  • 迁移到 tomcat 7 后启动时出现 java.lang.IllegalArgumentException

    将 jbilling www jbilling org 移至 tomcat 7 后 它不再启动并在启动时抛出以下异常 java lang IllegalArgumentException taglib definition not cons
  • Jquery 中的文本突出显示与音频同步

    我需要同步许多网页上的文本和音频 播放音频时 文本应逐短语突出显示 而不是逐字或逐字符突出显示 因此仅在短语开头才需要同步 我不想使用仅 Flash 的解决方案 而更愿意使用对 HTML 更友好的解决方案 我想结合使用两个插件 JPlaye
  • 单行for循环构建字典?

    我正在构建一个字典 稍后我会将其转换为 JSON 字符串 我这样构造它 data for smallItem in bigList data smallItem smallItem 我怎样才能使 for 循环第一行 您可以使用听写理解 ht
  • Maven中如何处理生成源的依赖关系?

    在过去的几天里 我一直在尝试使用以下命令将 REST API 客户端的代码生成到我的项目中 openapi generator maven plugin 然而 Maven 失败了compile 一旦意识到生成的代码刚刚引入的第三方依赖项尚未
  • 使 zsh 从文件中获取完整参数

    zsh很棒 但它的完成系统非常多样化 并且文档缺乏好的示例 是否有用于完成特定应用程序的模板 补全将从文件中获取其匹配数据 并用换行符分隔 我尝试修改我的一个旧示例 该示例将匹配数据 实时 cat zsh completers jazzup
  • Java8 - 显式类型如何匹配一种变体 - 而不是其他类型?

    我有一个简单的片段如下 我提到this https jira mongodb org browse JAVA 2010 List
  • 使用 Javascript / Jquery 滚动到页面上的特定位置[重复]

    这个问题在这里已经有答案了 可以使用以下命令移动到页面上的某个位置 elementId 我怎样才能使用 Javascript Jquery 做同样的事情 当调用 JS 函数时 我想滚动到该页面上的特定位置 经过多次谷歌搜索后 我发现你只需要
  • ruby: `read': File.read 处的参数无效 -(Errno::EINVAL)

    我正在做一个简单的脚本来检查所有文件的 crc require zlib exit if Object const defined Ocra files Dir glob File open dir txt a do file file p
  • 了解触摸事件

    我正在尝试让我的一些库与触摸设备一起使用 但我很难弄清楚它们是如何支持的以及它们是如何工作的 基本上有5个触摸事件 https developer mozilla org en US docs DOM Touch events 但移动浏览器
  • C#中访问内存地址

    我正在与 ActiveX 组件交互 该组件为我提供内存地址和字节数 如何编写 C 程序来访问从给定内存地址开始的字节 有没有一种方法可以本地实现 或者我必须与 C 接口 ActiveX 组件和我的程序是否共享相同的内存 地址空间 您可以使用
  • THREE.BufferGeometry - 访问面索引和面法线

    在 BufferGeometry 中 有没有一种方法可以访问面索引和法线而不转换为几何图形 手头的几何体是由 Threejs 编辑器创建的 SphereBufferGeometry 我只需要读取面部索引和法线 而不需要修改它们 Buffer
  • Google 结账通知确认失败

    我有一个被调用的回调 url 我可以处理它 但是 Google 不会处理我的确认 这一切都在EnvironmentType Sandbox 在 Google 结帐 集成控制台 中 我收到以下消息 我们在处理您的通知确认时遇到错误 我们得到的
  • 使用 ItemTouchHelper 时,如何在拖动时取消对 RecyclerView 中项目的拖动?

    背景 我试图拥有一个具有不同视图类型的 RecyclerView 但具有拖放功能以及单击和长按操作的能力 它与 电话 应用程序类似 您可以在其中更改收藏夹项目的顺序 在 电话 应用程序上 当您长按某个项目时 会立即出现上下文菜单 如果继续拖
  • 配置器中的组合数量

    我被要求编写一个例程来决定产品配置器中可能的组合数量 配置器非常简单 尽管它具有比这更多的功能 但它可以建模为多个 单选组 如 UI 控件 其中必须选择 n 个选项之一 唯一可以使用的约束是规则 如果选择了一个选项 则不能选择另一个选项 所
  • Pandas 两个分组的 DataFrame 列的简单关联

    有没有一种好方法来获取两个分组的 DataFrame 列的简单关联 看来无论熊猫怎样 corr 函数想要返回一个相关矩阵 例如 i pd MultiIndex from product A B C np arange 1 11 1 name