在数据帧中的滚动窗口上应用函数,其中整个数据帧传递给函数

2024-01-15

我有一个由 YearMo 索引的 5 列数据框:

yearmo = np.repeat(np.arange(2000, 2010) * 100, 12) + [x for x in range(1,13)] * 10 
rates = pd.DataFrame(data=np.random.random(120, 5)), 
                     index=pd.Series(data=yearmo, name='YearMo'), 
                     columns=['A', 'B','C', 'D', 'E'])

rates.head()                       
YearMo    A         B          C         D       E 
200411  0.237696  0.341937  0.258713  0.569689  0.470776
200412  0.601713  0.313006  0.221821  0.720162  0.889891
200501  0.024379  0.761315  0.225032  0.293682  0.302431
200502  0.996778  0.388783  0.026448  0.056188  0.744850
200503  0.942024  0.768416  0.484236  0.102904  0.287446

我想做的是能够应用滚动窗口并将所有五列传递给函数 - 类似于:

rates.rolling(window=60, min_periods=60).apply(lambda x: my_func(data=x, param=5)

但这种方法将函数应用于每一列。指定axis=1也不做任何事......


Question: ...应用滚动窗口并将所有五列传递给函数

这将做你想做的事,min_periods=5, axis=1. .rolling(...窗口是列 'A':'E' 或列的倍数5.

def f1(data=None):
    print('f1(%s, %s) data=%s' % (str(type(data)), param, data))
    return data.sum()

subRates = rates.rolling(window=60, min_periods=5, axis=1).apply(lambda x: f1( x ) )

Input:

               A         B         C         D         E
YearMo
200001  0.666744  0.569194  0.546873  0.018696  0.240783
200002  0.035888  0.853077  0.348200  0.921997  0.283177
200003  0.652761  0.076630  0.298076  0.800504  0.041231
200004  0.537397  0.968399  0.211072  0.328157  0.929783
200005  0.759506  0.702220  0.807477  0.886935  0.022587

Output:

f1(<class 'numpy.ndarray'>, None) data=[ 0.66674393  0.56919434  0.54687296  0.01869609  0.24078329]
f1(<class 'numpy.ndarray'>, None) data=[ 0.03588751  0.85307707  0.34819965  0.92199698  0.28317727]
f1(<class 'numpy.ndarray'>, None) data=[ 0.65276067  0.07663029  0.29807589  0.80050448  0.04123137]
f1(<class 'numpy.ndarray'>, None) data=[ 0.53739687  0.96839917  0.21107155  0.32815687  0.92978308]
f1(<class 'numpy.ndarray'>, None) data=[ 0.75950632  0.70222034  0.80747698  0.88693524  0.02258685]
         A   B   C   D         E
YearMo
200001 NaN NaN NaN NaN  2.042291
200002 NaN NaN NaN NaN  2.442338
200003 NaN NaN NaN NaN  1.869203
200004 NaN NaN NaN NaN  2.974808
200005 NaN NaN NaN NaN  3.178726

使用 Python:3.4.2 进行测试 - pandas:0.19.2

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

在数据帧中的滚动窗口上应用函数,其中整个数据帧传递给函数 的相关文章

  • 删除flask中的一对一关系

    我目前正在使用 Flask 开发一个应用程序 并且在删除一对一关系中的项目时遇到了一个大问题 我的模型中有以下结构 class User db Model tablename user user id db Column db String
  • 使用 kivy textinput 的 'input_type' 属性的问题

    您好 我在使用 kivy 的文本输入小部件的 input type 属性时遇到问题 问题是我制作了两个自定义文本输入 其中一个称为 StrText 其中设置了 input type text 然后是第二个文本输入 名为 NumText 其
  • Python zmq SUB 套接字未接收 MQL5 Zmq PUB 套接字

    我正在尝试在 MQL5 中设置一个 PUB 套接字 并在 Python 中设置一个 SUB 套接字来接收消息 我在 MQL5 中有这个 include
  • 使用Python请求登录Google帐户

    在多个登录页面上 需要谷歌登录才能继续 我想用requestspython 中的库以便让我自己登录 通常这很容易使用requests库 但是我无法让它工作 我不确定这是否是由于 Google 做出的一些限制 也许我需要使用他们的 API 或
  • 立体太阳图 matplotlib 极坐标图 python

    我正在尝试创建一个与以下类似的简单的立体太阳路径图 http wiki naturalfrequent com wiki Sun Path Diagram http wiki naturalfrequency com wiki Sun Pa
  • 如何使用 Pandas、Numpy 加速 Python 中的嵌套 for 循环逻辑?

    我想检查一下表的字段是否TestProject包含了Client端传入的参数 嵌套for循环很丑陋 有什么高效简单的方法来实现吗 非常感谢您的任何建议 def test parameter a list parameter b list g
  • “隐藏”内置类对象、函数、代码等的名称和性质[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我很好奇模块中存在的类builtins无法直接访问的 例如 type lambda 0 name function of module
  • pyspark 将 twitter json 流式传输到 DF

    我正在从事集成工作spark streaming with twitter using pythonAPI 我看到的大多数示例或代码片段和博客是他们从Twitter JSON文件进行最终处理 但根据我的用例 我需要所有字段twitter J
  • Numpy - 根据表示一维的坐标向量的条件替换数组中的值

    我有一个data多维数组 最后一个是距离 另一方面 我有距离向量r 例如 Data np ones 20 30 100 r np linspace 10 50 100 最后 我还有一个临界距离值列表 称为r0 使得 r0 shape Dat
  • pip 列出活动 virtualenv 中的全局包

    将 pip 从 1 4 x 升级到 1 5 后pip freeze输出我的全局安装 系统 软件包的列表 而不是我的 virtualenv 中安装的软件包的列表 我尝试再次降级到 1 4 但这并不能解决我的问题 这有点类似于这个问题 http
  • 不同编程语言中的浮点数学

    我知道浮点数学充其量可能是丑陋的 但我想知道是否有人可以解释以下怪癖 在大多数编程语言中 我测试了 0 4 到 0 2 的加法会产生轻微的错误 而 0 4 0 1 0 1 则不会产生错误 两者计算不平等的原因是什么 在各自的编程语言中可以采
  • 从 NumPy ndarray 中选择行

    我只想从 a 中选择某些行NumPy http en wikipedia org wiki NumPy基于第二列中的值的数组 例如 此测试数组的第二列包含从 1 到 10 的整数 gt gt gt test numpy array nump
  • 使用特定颜色和抖动在箱形图上绘制数据点

    我有一个plotly graph objects Box图 我显示了箱形 图中的所有点 我需要根据数据的属性为标记着色 如下所示 我还想抖动这些点 下面未显示 Using Box我可以绘制点并抖动它们 但我不认为我可以给它们着色 fig a
  • 如何使用原始 SQL 查询实现搜索功能

    我正在创建一个由 CS50 的网络系列指导的应用程序 这要求我仅使用原始 SQL 查询而不是 ORM 我正在尝试创建一个搜索功能 用户可以在其中查找存储在数据库中的书籍列表 我希望他们能够查询 书籍 表中的 ISBN 标题 作者列 目前 它
  • 如何在 Windows 命令行中使用参数运行 Python 脚本

    这是我的蟒蛇hello py script def hello a b print hello and that s your sum sum a b print sum import sys if name main hello sys
  • 根据列 value_counts 过滤数据框(pandas)

    我是第一次尝试熊猫 我有一个包含两列的数据框 user id and string 每个 user id 可能有多个字符串 因此会多次出现在数据帧中 我想从中导出另一个数据框 一个只有那些user ids列出至少有 2 个或更多string
  • python import inside函数隐藏现有变量

    我在我正在处理的多子模块项目中遇到了一个奇怪的 UnboundLocalError 分配之前引用的局部变量 问题 并将其精简为这个片段 使用标准库中的日志记录模块 import logging def foo logging info fo
  • 如何应用一个函数 n 次? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 假设我有一个函数 它接受一个参数并返回相同类型的结果 def increment x return x 1 如何制作高阶函数repeat可以
  • Kivy - 单击按钮时编辑标签

    我希望 Button1 在单击时编辑标签 etykietka 但我不知道如何操作 你有什么想法吗 class Zastepstwa App def build self lista WebOps getList layout BoxLayo
  • 使用随机放置的 NaN 创建示例 numpy 数组

    出于测试目的 我想创建一个M by Nnumpy 数组与c随机放置的 NaN import numpy as np M 10 N 5 c 15 A np random randn M N A mask np nan 我在创建时遇到问题mas

随机推荐

  • 如何使用 Gallio 和 MBUnit 以编程方式运行单元测试?

    作为部署过程的一部分 我正在尝试以编程方式检查我的单元测试是否通过 该应用程序使用 MBunit 和 Gallio 作为其单元测试框架 这是我的代码 var setup new Gallio Runtime RuntimeSetup set
  • ASP.NET MVC 操作被调用两次

    我有一个特定的控制器操作被调用两次 这除了奇怪之外还导致我的应用程序的单例部分出现问题 这并不是真正的问题 它只是引起了我对两次调用的注意 知道为什么控制器操作每次都会执行两次吗 不回来false或者阻止对通过 AJAX 进行调用的链接上的
  • 如何将 QFlags 与 QML 结合使用?

    我有一个我创建的 QFlag 我想在 QML 中使用这个 QFlag 具体来说 我希望能够将几个标志组合在一起 并将它们作为参数传递给方法 我注意到这里没有明确列出 QFlags 作为 QML 支持的数据类型 http doc qt nok
  • iOS .onContinueUserActivity 未被调用

    onContinueUserActivity从未被调用过Apple 提供的状态恢复示例应用程序 https developer apple com documentation swiftui restoring your app s sta
  • 哪些语言向开发人员公开 IEEE 754 陷阱?

    我想出于教育目的玩这些陷阱 数值微积分中默认行为的一个常见问题是我们 错过 了错误运算中出现的 Nan 或 inf 默认行为是通过计算进行传播 但某些操作 如比较 会破坏链条并释放 Nan 并且其余处理将继续 而不会在算法的先前步骤中确认奇
  • Mysql存储函数和分组最小值[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 Schema 数据库架构得到简化 活动表该表存储事件 CREATE TABLE Events event id bigint 20 u
  • MethodImpl(AggressiveInlined) - 它有多激进?

    所以我稍微看了一下MethodImpl 属性 http msdn microsoft com en us library system runtime compilerservices methodimplattribute v vs 11
  • iOS 中 Unity Json.net System.Reflection.Emit 错误

    我按照说明将 link xml 包含在 asset 文件夹中 但仍然收到错误 我认为这可能与反序列化字典有关 因为错误紧随其后 System Collection Generic IDictionary 2 set Item TKey TV
  • 如何在注释处理中引用方法的实现?

    我正在研究 Java javax 注释处理 假设我有一个方法注释 Target ElementType METHOD public interface MethodAnnotation 现在我想处理从带注释的方法的类型重写的所有方法 int
  • 主干视图的私有和公共变量

    在主干视图中 您将把私有变量和公共变量放在哪里 现在我有这样的事情 myView Backbone View extend initialize function options this myPublic I m public 我尝试添加
  • array_map 和 htmlentities

    我一直在尝试使用array map to 将字符转换为 HTML 实体 with htmlentities 像这样 lang array map htmlentities lang 我的数组如下所示 lang array lang var
  • 如何在没有 Amazon Cognito 的情况下使用 AWS S3?

    我正在使用 Node js REST API 来验证我的用户 一旦他们通过身份验证 我就允许他们发布带有文字的照片 我的计划是将照片的文本和 URL 存储在数据库中 这样 当他们访问帖子提要时 我的应用程序将查询数据库以获取文本和 URL
  • PyQt6:AttributeError:类型对象“QImage”没有属性“Format_RGB888”[重复]

    这个问题在这里已经有答案了 我试图将代码从 PyQt5 移植到 PyQt6 但出现以下错误 AttributeError type object QImage has no attribute Format RGB888 尽管在 PyQt6
  • “+var === +var”内部如何工作来验证 var 是否是数字?

    看到这个问题 JavaScript 中是否有一种 内置 方法来检查字符串是否为有效数字 https stackoverflow com questions 175739 is there a built in way in javascri
  • 使用不同的 jdbc 驱动程序连接到多个数据库

    我需要编写一个基于守护进程的java进程 不是基于web的 它将连接到Oracle 10G数据库 从中读取一些数据 然后连接到SQL Server数据库并将数据写入表中 听起来很简单 但我对此有几个疑问 我需要有两个 jdbc 驱动程序 即
  • 如何更改 Smalltalk 中变形的位置?二维网格

    我无法更改某些变形的位置 虽然可以通过以下方式将它们从检查器中移走 self position 50 50 例如 我编写了一个函数 该函数应该设置二维变形集合的位置 Cell 是简单 switchmorph 的子类 拥有这个函数的类是 bo
  • Python读取麦克风

    我试图让 python 从我的麦克风中获取数据 因为我想制作一个随机生成器 它将使用其中的噪音 所以基本上我不想记录声音 而是将其作为数据文件读取 但是是实时的 我知道 Labview 可以做到这一点 但我不喜欢这个框架 并且正在努力提高
  • python正确登录后无法获取wordpress Dashboard

    我想创建一个脚本 在使用我的组合登录后返回 wordpress 仪表板 如下所示 屏幕截图 所以我创建了这个脚本 import urllib urllib2 os sys requests re site http example com
  • 以编程方式构建公式,无需字符串操作

    举例来说 考虑 R 中的基本回归模型 form1 lt Petal Length Sepal Length Sepal Width fit1 lt lm form1 iris 我向在这里发帖的植物学家致歉 为了添加二次项和交互项 我知道三种
  • 在数据帧中的滚动窗口上应用函数,其中整个数据帧传递给函数

    我有一个由 YearMo 索引的 5 列数据框 yearmo np repeat np arange 2000 2010 100 12 x for x in range 1 13 10 rates pd DataFrame data np