熊猫滚动窗口百分位排名

2023-11-23

我正在尝试在滚动窗口内按列计算数据的百分位数排名。

test=pd.DataFrame(np.random.randn(20,3),pd.date_range('1/1/2000',periods=20),['A','B','C'])

test
Out[111]: 
                   A         B         C
2000-01-01 -0.566992 -1.494799  0.462330
2000-01-02 -0.550769 -0.699104  0.767778
2000-01-03 -0.270597  0.060836  0.057195
2000-01-04 -0.583784 -0.546418 -0.557850
2000-01-05  0.294073 -2.326211  0.262098
2000-01-06 -1.122543 -0.116279 -0.003088
2000-01-07  0.121387  0.763100  3.503757
2000-01-08  0.335564  0.076304  2.021757
2000-01-09  0.403170  0.108256  0.680739
2000-01-10 -0.254558 -0.497909 -0.454181
2000-01-11  0.167347  0.459264 -1.247459
2000-01-12 -1.243778  0.858444  0.338056
2000-01-13 -1.070655  0.924808  0.080867
2000-01-14 -1.175651 -0.559712 -0.372584
2000-01-15 -0.216708 -0.116188  0.511223
2000-01-16  0.597171  0.205529 -0.728783
2000-01-17 -0.624469  0.592436  0.832100
2000-01-18  0.259269  0.665585  0.126534
2000-01-19  1.150804  0.575759 -1.335835
2000-01-20 -0.909525  0.500366  2.120933

我尝试将 .rolling 与 .apply 一起使用,但我错过了一些东西。

pctrank = lambda x: x.rank(pct=True)
rollingrank=test.rolling(window=10,centre=False).apply(pctrank)

对于 A 列,最终值将是从 2000-01-11 到 2000-01-20 的 length=10 窗口内的百分位等级 -0.909525。有任何想法吗?


您的 lambda 接收一个 numpy 数组,该数组没有.rank方法——这是 pandas 的Series and DataFrame拥有它。因此你可以将其更改为

pctrank = lambda x: pd.Series(x).rank(pct=True).iloc[-1]

或者你可以使用纯 numpy 沿着这个答案:

def pctrank(x):
    n = len(x)
    temp = x.argsort()
    ranks = np.empty(n)
    ranks[temp] = (np.arange(n) + 1) / n
    return ranks[-1]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

熊猫滚动窗口百分位排名 的相关文章

  • 如何使用 colorchecker 在 opencv 中进行颜色校准?

    我有数码相机获取的色彩检查器图像 我如何使用它来使用 opencv 校准图像 按照以下颜色检查器图像操作 您是想问如何进行颜色校准或如何使用 OpenCV 进行校准 为了进行颜色校准 您可以使用校准板的最后一行 灰色调 以下是您应该逐步进行
  • Pyqt-如何因另一个组合框数据而更改组合框数据?

    我有一个表 有 4 列 这 4 列中的两列是关于功能的 一个是特征 另一个是子特征 在每一列中 所有单元格都有组合框 我可以在这些单元格中打开txt 我想 当我选择电影院作为功能时 我只想看到子功能组合框中的电影名称 而不是我的 数据 中的
  • 无故运行测试时 PyCharm 抛出“AttributeError: 'module' object has no attribute”

    因此 我有一个 Django REST Framework 项目 有一天它无法在 PyCharm 中运行测试 从命令行我可以使用它们来运行它们paver or the manage py直接地 曾经有一段时间 当我们没有在文件顶部导入类的超
  • Pandas dataframe:每批行的操作

    我有一个熊猫数据框df我想计算每批行的一些统计信息 例如 假设我有一个batch size 200000 对于每批batch sizerows 我想要一列的唯一值的数量ID我的数据框 我怎样才能做这样的事情呢 这是我想要的一个例子 prin
  • 将二维数组放入 Pandas 系列中

    我有一个 2D Numpy 数组 我想将其放入 pandas 系列 而不是 DataFrame 中 gt gt gt import pandas as pd gt gt gt import numpy as np gt gt gt a np
  • Python中列表中两个连续元素的平均值

    我有一个偶数个浮点数的列表 2 34 3 45 4 56 1 23 2 34 7 89 我的任务是计算 1 和 2 个元素 3 和 4 5 和 6 等元素的平均值 在 Python 中执行此操作的快捷方法是什么 data 2 34 3 45
  • 根据 Pandas 中的列表对多列进行排序

    感谢有关如何根据 pandas 中的倍数列表对给定多列进行排序的任何提示 如下所示 import pandas as pd sort a a d e sort b s1 s3 s6 sort c t1 t2 t3 df pd DataFra
  • 将 numpy 代码点数组与字符串相互转换

    我有一个很长的 unicode 字符串 alphabet range 0x0FFF mystr join chr random choice alphabet for in range 100 mystr re sub W mystr 我想
  • CNTK 抱怨 LSTM 中的动态轴

    我正在尝试在 CNTK 中实现 LSTM 使用 Python 来对序列进行分类 Input 特征是固定长度的数字序列 时间序列 标签是 one hot 值的向量 Network input input variable input dim
  • 在相同任务上,Keras 比 TensorFlow 慢

    我正在使用 Python 运行斩首 DCNN 本例中为 Inception V3 来获取图像特征 我使用的是 Anaconda Py3 6 和 Windows7 使用 TensorFlow 时 我将会话保存在变量中 感谢 jdehesa 并
  • Alembic:如何迁移模型中的自定义类型?

    My User模型是 class User UserMixin db Model tablename users noinspection PyShadowingBuiltins uuid Column uuid GUID default
  • 揭秘sharedctypes性能

    在 python 中 可以在多个进程之间共享 ctypes 对象 然而我注意到分配这些对象似乎非常昂贵 考虑以下代码 from multiprocessing import sharedctypes as sct import ctypes
  • Python Django-如何从输入文件标签读取文件?

    我不想将文件保存在我的服务器上 我只想在下一页中读取并打印该文件 现在我有这个 index html
  • Pandas 堆积条形图中元素的排序

    我正在尝试绘制有关某个地区 5 个地区的家庭在特定行业赚取的收入比例的信息 我使用 groupby 按地区对数据框中的信息进行排序 df df orig groupby District Portion of income value co
  • 使用 pybtex 将 bibtex 转换为格式化的 HTML 参考书目,例如哈佛风格

    我正在使用 Django 并将 bibtex 存储在我的模型中 并且希望能够以格式化 HTML 字符串的形式向我的视图传递引用 使其看起来像哈佛引用样式 使用中描述的方法Pybtex 无法识别 bibtex 条目 https stackov
  • Django - 提交具有同一字段多个输入的表单

    预警 我对 Django 以及一般的 Web 开发 非常陌生 我使用 Django 托管一个基于 Web 的 UI 该 UI 将从简短的调查中获取用户输入 通过我用 Python 开发的一些分析来提供输入 然后在 UI 中呈现这些分析的可视
  • falcon,AttributeError:“API”对象没有属性“create”

    我正在尝试测试我的猎鹰路线 但测试总是失败 而且看起来我把所有事情都做对了 my app py import falcon from resources static import StaticResource api falcon API
  • Python对象初始化性能

    我只是做了一些快速的性能测试 我注意到一般情况下初始化列表比显式初始化列表慢大约四到六倍 这些可能是错误的术语 我不确定这里的行话 例如 gt gt gt import timeit gt gt gt print timeit timeit
  • OSX 上的 locale.getlocale() 问题

    我需要获取系统区域设置来执行许多操作 最终我想使用 gettext 翻译我的应用程序 我打算在 Linux 和 OSX 上分发它 但我在 OSX Snow Leopard 上遇到了问题 python Python 2 5 2 r252 60
  • 导入错误:无法导入名称“时间戳”

    我使用以下代码在 python 3 6 3 中成功安装了 ggplot conda install c conda forge ggplot 但是当我使用下面的代码将其导入笔记本时 出现错误 from ggplot import Impor

随机推荐

  • 比较 2 个自定义对象 - C#

    我需要在基类中编写一个通用方法 该方法接受 2 个对象作为参数并比较它们是否相等 Ex public abstract class BaseData public bool AreEqual object O1 object O2 Need
  • ARM 上的 x86 Docker 镜像

    我有一个由 x86 计算机构建并上传到 Amazon ECR 的 Docker 映像 我正在尝试在 ARM 机器上运行此映像 但是 我得到以下信息 sudo docker run 1b3ed34937e8 WARNING The reque
  • 决定在运行时序列化哪些属性

    假设我必须按级别序列化 Car 类的对象 例如内部和公共 公共级别中的某些属性不应序列化 因为它们是内部的 目前 我能想到的实现此目的的 最简单 方法是使用继承 class CarPublic public int PropX get se
  • 如何在 HTML“选项”标签上显示工具提示?

    无论是使用纯 HTML 还是 jQuery 辅助 JavaScript 如何在个人上显示工具提示
  • 使用 AVPlayer 和 AVAssetExportSession 进行缓存

    我想使用 AVPlayer 缓存渐进式下载视频 如何将 AVPlayer 的项目保存到磁盘 我正在尝试在播放器的 currentItem 已完全加载 上使用 AVAssetExportSession 这段代码给了我 AVAssetExpor
  • Post/Redirect/Get 上的整页重新加载忽略缓存控制

    我有一个加载大量图像 CSS 和 JavaScript 的页面 我添加了一个远期的 Expires 标头 并将这些外部依赖项上的 Cache Control 设置为 public 以便它们应该被缓存 但每次我执行 Post Redirect
  • 运行bash脚本时自动输入密码[重复]

    这个问题在这里已经有答案了 例如 假设我有一个脚本说 bin bash sudo setpci s 00 02 0 F4 B 00 如何将 root 密码放入脚本中 以便在读取和执行 sudo 行时接受它作为密码 这样我就不必手动输入 产卵
  • MySQL 中 UNIX_TIMESTAMP 和 NOW() 的区别

    我有一个博客 用户可以发表评论 我插入他们发表评论的时间NOW 然后使用date j M Y stored timestamp 显示他们发布的时间 我想知道 NOW 是否返回locatime of the end user or the l
  • EntityManager查询后不刷新数据

    我当前的项目使用 HSQLDB2 0 和 JPA2 0 The scenario is I query DB to get list of contactDetails of person I delete single contactIn
  • Java 中的模拟文件 - 模拟内容 - Mockito

    我对模拟还很陌生 我一直在尝试模拟实际内容 本质上仅在内存中创建一个虚拟文件 以便在任何时候都不会将数据写入磁盘 我尝试过一些解决方案 例如模拟文件并模拟尽可能多的我能找出的属性 然后使用文件写入器 缓冲写入器写入其中 但这些解决方案效果不
  • android 工具链缺少 crtbegin_so.o (自定义构建)

    我使用 android build gcc sh 脚本将 gdc 与 gcc 一起编译 并在 build core definitions mk 中包含了一个新的存根 以在构建过程中处理 D 语言文件 我知道此时编译一切正常 但我的问题是链
  • 如何创建带有可重写变量的 PayPal 按钮

    您好 我想创建一个具有动态设定金额的贝宝购买按钮 我想通过表单内的文本输入字段传递金额 并通过隐藏字段传递 item number 问题是 无论我做什么 我都会从 paypal 网站上获得一个加密的 s xclick 按钮 此按钮不允许将隐
  • 2D 平台游戏两个轴的碰撞问题

    我正在使用 C 和 SDL 开发一个小型 2D 平台游戏 格斗游戏 但在碰撞检测方面遇到了很多麻烦 这些关卡由一系列图块组成 我使用 for 循环来遍历每个图块 我知道这可能不是最好的方法 而且我可能也需要这方面的帮助 对于角色的每一侧 我
  • Android:如何避免标题在列表视图中滚动,android?

    我有一个列表视图 我将 headerview 添加到该列表中 一切都很好 但是当滚动列表 headerview 也随着列表移动时 所以我想避免 headerview 滚动 我的意思是当我列表到达顶部视图 标题栏 时我必须只滚动列表 head
  • 如何控制Windows中的文件访问?

    Go 提供os Chmod 用于设置文件和目录权限 例如 如果我想确保文件只能由当前用户访问 我可以执行以下操作 os Chmod somefile txt 0600 这在 Linux 上工作得很好 但在 Windows 上却毫无作用 在深
  • com.google.android.youtube.api.jar.client.RemoteEmbeddedPlayer 中调用的构造函数引发异常

    我已更改依赖项以导入 com android support appcompat v7 23 0 1 和 com android support design 23 0 1 但它无法修复错误 YouTube 片段显示 初始化 Youtube
  • php spaceship 运算符如何比较字符串、数组和对象

    我想知道 php spaceship 运算符如何比较字符串 对象和数组 例如 下面的代码 echo Its Me at SO lt gt Its Me at SO 将返回 0 因为我知道所有字符都相同 计数也相同 但是如果我有如下代码 ec
  • 如何在 svn 中正确地进行提交后分支并恢复主干?

    我有一些提交 事后决定 将更多地进行分支工作 而不是主干工作 如何创建分支并恢复主干 同时仍然确保以后合并不会很痛苦 是否像将当前主干复制到分支并恢复主干一样简单 或者这会导致以后头痛吗 我认为飞利浦的方法将类似于以下内容 假设最后一个 良
  • 使用 NHibernate 在同一 ASP.NET 应用程序中支持 Oracle 和 SQL Server 的建议

    我们的客户希望在下一个项目中同时支持 SQL Server 和 Oracle 我们的经验来自 NET SQL Server 平台 我们将雇用一名 Oracle 开发人员 但我们关心的是 DataAccess 代码 NHibernate 会让
  • 熊猫滚动窗口百分位排名

    我正在尝试在滚动窗口内按列计算数据的百分位数排名 test pd DataFrame np random randn 20 3 pd date range 1 1 2000 periods 20 A B C test Out 111 A B