pandas - groupby 和重新缩放值

2023-12-08

我想向此数据框添加一个重新缩放的列:

I,Value
A,1
A,4
A,2
A,5
B,1
B,2
B,1

这样新列(我们称之为scale),遵循一个函数value每组的列I。该函数只是每个组范围的标准化:

lambda x: (x-min(x))/(max(x)-min(x))

到目前为止我尝试过:

d = df.groupby('I').apply(lambda x: (x-min(x))/(max(x)-min(x)))

收到以下类型错误:

TypeError: Could not operate array(['A'], dtype=object) with block values index 1 is out of bounds for axis 1 with size 1

如果您将“值”列添加到代码中,那么它将起作用:

In [69]:
df.groupby('I')['Value'].apply(lambda x: (x-min(x))/(max(x)-min(x)))

Out[69]:
0    0.00
1    0.75
2    0.25
3    1.00
4    0.00
5    1.00
6    0.00
dtype: float64

pandas 方法版本如下,产生相同的结果:

In [67]:
df['Normalised'] = df.groupby('I')['Value'].apply(lambda x: (x-x.min())/(x.max()-x.min()))
df

Out[67]:
   I  Value  Normalised
0  A      1        0.00
1  A      4        0.75
2  A      2        0.25
3  A      5        1.00
4  B      1        0.00
5  B      2        1.00
6  B      1        0.00
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pandas - groupby 和重新缩放值 的相关文章

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

    免责声明 我是计算机视觉菜鸟 我看过很多关于如何在较大图像中查找特定子图像的堆栈溢出帖子 我的用例有点不同 因为我不希望它是具体的 而且我不确定如何做到这一点 如果可能的话 但我感觉应该如此 我有大量图像数据集 有时 其中一些图像是数据集的
  • 如何收集列表、字典等中重复计算的结果(或制作修改每个元素的列表的副本)?

    There are a great many existing Q A on Stack Overflow on this general theme but they are all either poor quality typical
  • 导入错误:没有名为 _ssl 的模块

    带 Python 2 7 的 Ubuntu Maverick 我不知道如何解决以下导入错误 gt gt gt import ssl Traceback most recent call last File
  • 更改自动插入 tkinter 小部件的文本颜色

    我有一个文本框小部件 其中插入了三条消息 一条是开始消息 一条是结束消息 一条是在 单位 被摧毁时发出警报的消息 我希望开始和结束消息是黑色的 但被毁坏的消息 参见我在代码中评论的位置 插入小部件时颜色为红色 我不太确定如何去做这件事 我看
  • Python 多处理示例不起作用

    我正在尝试学习如何使用multiprocessing但我无法让它发挥作用 这是代码文档 http docs python org 2 library multiprocessing html from multiprocessing imp
  • 为 pandas 数据透视表中的每个值列定义 aggfunc

    试图生成具有多个 值 列的数据透视表 我知道我可以使用 aggfunc 按照我想要的方式聚合值 但是如果我不想对两列求和或求平均值 而是想要一列的总和 同时求另一列的平均值 该怎么办 那么使用 pandas 可以做到这一点吗 df pd D
  • __del__ 真的是析构函数吗?

    我主要用 C 做事情 其中 析构函数方法实际上是为了销毁所获取的资源 最近我开始使用python 这真的很有趣而且很棒 我开始了解到它有像java一样的GC 因此 没有过分强调对象所有权 构造和销毁 据我所知 init 方法对我来说在 py
  • feedparser 在脚本运行期间失败,但无法在交互式 python 控制台中重现

    当我运行 eclipse 或在 iPython 中运行脚本时 它失败了 ascii codec can t decode byte 0xe2 in position 32 ordinal not in range 128 我不知道为什么 但
  • python 集合可以包含的值的数量是否有限制?

    我正在尝试使用 python 设置作为 mysql 表中 ids 的过滤器 python集存储了所有要过滤的id 现在大约有30000个 这个数字会随着时间的推移慢慢增长 我担心python集的最大容量 它可以包含的元素数量有限制吗 您最大
  • HTTPS 代理不适用于 Python 的 requests 模块

    我对 Python 还很陌生 我一直在使用他们的 requests 模块作为 PHP 的 cURL 库的替代品 我的代码如下 import requests import json import os import urllib impor
  • ExpectedFailure 被计为错误而不是通过

    我在用着expectedFailure因为有一个我想记录的错误 我现在无法修复 但想将来再回来解决 我的理解expectedFailure是它会将测试计为通过 但在摘要中表示预期失败的数量为 x 类似于它如何处理跳过的 tets 但是 当我
  • Numpy 优化

    我有一个根据条件分配值的函数 我的数据集大小通常在 30 50k 范围内 我不确定这是否是使用 numpy 的正确方法 但是当数字超过 5k 时 它会变得非常慢 有没有更好的方法让它更快 import numpy as np N 5000
  • 如何将 PIL 图像转换为 NumPy 数组?

    如何转换 PILImage来回转换为 NumPy 数组 这样我就可以比 PIL 进行更快的像素级转换PixelAccess允许 我可以通过以下方式将其转换为 NumPy 数组 pic Image open foo jpg pix numpy
  • 为美国东部以外地区的 Cloudwatch 警报发送短信?

    AWS 似乎没有为美国东部以外的 SNS 主题订阅者提供 SMS 作为协议 我想连接我的 CloudWatch 警报并在发生故障时接收短信 但无法将其发送到 SMS YES 经过一番挖掘后 我能够让它发挥作用 它比仅仅选择一个主题或输入闹钟
  • 如何从没有结尾的管道中读取 python 中的 stdin

    当管道来自 打开 时 不知道正确的名称 我无法从 python 中的标准输入或管道读取数据 文件 我有作为例子管道测试 py import sys import time k 0 try for line in sys stdin k k
  • 在 Pandas DataFrame Python 中添加新列[重复]

    这个问题在这里已经有答案了 例如 我在 Pandas 中有数据框 Col1 Col2 A 1 B 2 C 3 现在 如果我想再添加一个名为 Col3 的列 并且该值基于 Col2 式中 如果Col2 gt 1 则Col3为0 否则为1 所以
  • 用于运行可执行文件的python多线程进程

    我正在尝试将一个在 Windows 上运行可执行文件并管理文本输出文件的 python 脚本升级到使用多线程进程的版本 以便我可以利用多个核心 我有四个独立版本的可执行文件 每个线程都知道要访问它们 这部分工作正常 我遇到问题的地方是当它们
  • 在 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
  • Pandas 与 Numpy 数据帧

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

随机推荐

  • OpenSSL .NET C# 包装器 X509 认证

    您好 我在我的 c 项目中使用 OpenSSL NET 包装器 我想生成 X509 认证 但我不太了解程序 它应该包含什么 什么参数 等等 这是我的代码 我在查看一些测试后做到了 OpenSSL X509 X509Certificate x
  • 设置 PopupWindow 具有最大高度

    我在 PopupWindow 内膨胀 ListView 我希望弹出窗口的行为如下 当列表视图的高度 当列表的高度 gt x 列表视图可滚动 时 设置弹出窗口的高度 x 弹出窗口由附加到 EditText 的 TextWatcher 显示 因
  • 将字符串拆分为标记并将它们保存在数组中

    如何将字符串拆分为标记 然后将它们保存在数组中 具体来说 我有一个字符串 abc qwe jkh 我想分开 然后将标记保存到数组中 输出将是这样的 array 0 abc array 1 qwe array 2 jkh 请帮我 includ
  • If Let 错误 - 条件绑定的初始化程序必须具有可选类型,而不是“[NSObject : AnyObject]”

    这是我的代码 PFUser logInWithUsernameInBackground email password password user PFUser error NSError gt Void in if user nil Pus
  • std::map 放置 gcc 4.8.2

    我正在尝试使用 std map 的 emplace 函数 但它似乎没有实现 但我读到它是在 4 8 中实现的 以下代码 std map
  • 其他库中类型之间的 C++ 转换运算符

    为了方便起见 我希望能够在其他库中定义的两种类型之间进行转换 具体来说 QString来自 Qt 库和UnicodeString来自 ICU 库 现在 我已经在项目命名空间中创建了实用函数 namespace MyProject const
  • 堆栈面板的水平滚动不起作用

    我尝试创建一个可滚动的水平 StackPanel 但我没有成功 目前我的 StackPanel 带有auto宽度 问题可能就在这里 包含一些项目 例如grids 现在 如果我的所有网格在 StackPanel 中都不可见 宽度太短 我将无法
  • 计算输入中的行数、单词数和字符数

    现在我正在阅读一本关于 C 的书 并且在书中遇到了一个我无法开始工作的示例 include
  • Shell 脚本中的十六进制到十进制

    有人可以帮我在 shell 脚本中将十六进制数转换为十进制数吗 例如 我想转换十六进制数bfca3000使用 shell 脚本转换为十进制 我基本上想要两个十六进制数的差 我的代码是 var3 echo ibase 16 var1 bc v
  • 带有额外字段的 Django Rest Framework 用户注册

    我正在尝试使用 DRF 来允许用户通过我的 API 创建新的用户帐户 我有一些可能与正常情况不同的要求 成功创建后 需要使用 DRF 的令牌功能返回用户令牌 所有 POST 字段都需要验证 我希望能够发布将存储在配置文件模型中的用户电话号码
  • 如何用文本文件项填充组合框!

    我有一个文本文件 其中包含以下类型的项目 wett45456 4556 45657 898 tyu5878 4566 7989 55565 现在我有一个 Windows 窗体 该窗体上有一个组合框 现在我想用每行的第一项填充组合框wett4
  • @font-face 和 Header 设置 Access-Control-Allow-Origin "*"

    我使用了以下规则来允许我们的静态域托管字体 但是当启用浏览器缓存时 我遇到了浏览器 firefox safari 不使用字体的问题
  • devise - 无法在 Rails 视图中显示登录或注销

    我现在正在使用 devise 进行基本身份验证 当我去localhost 3000 users sign in我将能够登录 或者如果我登录后前往那里 我将收到相应的消息 您已经登录 然而 user signed in 始终评估为 false
  • Spring xml ioc 相对于 Java 实例化有什么好处? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 好吧 这个问题会得到很多反
  • 将 Pandoc 与 Swift 结合使用

    我正在尝试使用 Pandoc 将 LaTeX 转换为 Markdown 我需要创建一个文件 然后运行 pandoc 终端命令 问题是我创建的文件不在我运行终端命令的同一目录中 我尝试使用 shell cd 但它不会将您移动到用户的文件夹 有
  • Swift - 将协议数组向上转换为超级协议数组会导致错误

    在 Swift 中 我注意到我可以向上转换一个符合名为的协议的对象 比方说SubProtocol到另一个称为SuperProtocol这是一个超级协议SubProtocol 但我不能对协议数组做同样的事情 这是我在 Playground 中
  • 使用 pywin32 Dispatch 在 Excel 中的命名工作表之后移动工作表

    我有大量文件 需要将其中的某个工作表复制到另一个工作簿 需要将它们放置在具有特定名称的工作表之后 同时保留要移动的工作表中的所有格式 我在另一个线程中看到 pywin32 将是可行的方法 但是我很难在指定的工作表 之后 复制此工作表 xl
  • 设计一个指令序列,以便在使用偏移量解码时执行其他操作

    这个问题是后续问题那个问题 要设置此问题的上下文 请考虑无空编程 这是一种将指令序列 shellcode 伪装成字符串的技术 在C编程语言中 字节0标志着字符串的结束 因此指令序列必须设计为不包含任何此类字节 否则它将被滥用的字符串操作函数
  • 文本框出现在单选按钮检查上

    我有以下 table td align center td table
  • pandas - groupby 和重新缩放值

    我想向此数据框添加一个重新缩放的列 I Value A 1 A 4 A 2 A 5 B 1 B 2 B 1 这样新列 我们称之为scale 遵循一个函数value每组的列I 该函数只是每个组范围的标准化 lambda x x min x m