楼主: Tigflanker
2429 3

[问答] 求助dataframe做滑窗转置 [推广有奖]

  • 8关注
  • 18粉丝

副教授

49%

还不是VIP/贵宾

-

威望
0
论坛币
2321 个
通用积分
9.9128
学术水平
179 点
热心指数
194 点
信用等级
167 点
经验
27443 点
帖子
622
精华
0
在线时间
851 小时
注册时间
2011-3-27
最后登录
2023-5-14

楼主
Tigflanker 发表于 2018-9-1 19:23:10 |AI写论文
100论坛币
例如我我有如下dataframe:

index value
1 11
2 22
3 33
4 44
5 55

想做这样一个滑窗转置,windows为2(可能会很多,例如30):

index value lag1 lag2
1 11 -- --
2 22 11 --
3 33 22 11
4 44 33 22
5 55 44 33


不知有无办法呢?请教大家

貌似知道pandas的rolling或者rolling_apply可以实现,但是例子太少。。
关键词:Dataframe Frame Data Fram FRA
Bye SAS.
若有缘,能重聚。

沙发
fengxingliulizi 发表于 2018-9-1 19:23:11
  1. import pandas as pd

  2. df = pd.DataFrame({'value':[11,22,33,44,55]})
  3. df['lag1'] = df['value'].shift(1)
  4. df['lag2'] = df['value'].shift(2)
复制代码


已有 2 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
Tigflanker + 5 + 2 + 2 + 2 是这样的,感谢
admin_kefu + 20 热心帮助其他会员

总评分: 论坛币 + 25  学术水平 + 2  热心指数 + 2  信用等级 + 2   查看全部评分

藤椅
67890 发表于 2018-9-1 21:53:01
我记得pandas 的 dataframe 有 lag 函数。

板凳
viavia 学生认证  发表于 2018-9-1 23:39:17
可以用pandas的shift函数,pandas.DataFrame.shift(i)
已有 2 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
Tigflanker + 5 + 2 + 2 + 2 观点有启发
admin_kefu + 10 热心帮助其他会员

总评分: 论坛币 + 15  学术水平 + 2  热心指数 + 2  信用等级 + 2   查看全部评分

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-7 23:01