我有一个python面板,它是整数值的索引。 在dict形式中,它看起来像这样:
{1:{1:series,2: series,3:series,4:series} 2:{1:series,2:series,3:series,4:series}...}
我想按日期滚动我的数据,并在每个日期采取过去的时间片将函数应用到每个时间序列,所以我得到一个结果,例如这里X是时间片函数的输出。
1 2 3 4 ...
1 X X X X
2 X X X X
3 X X X X
4 X X X X
我认为pandas.Panel.apply(func)
会这样做,但事实并非如此。我只在一个看似随机的列中得到一个结果。我可以迭代for循环,但我希望有一种更快更简单的方法。
我有一个看起来像这样的小组:
<class 'pandas.core.panel.Panel'>
Dimensions: 1000 (items) x 3714 (major) x 1000 (minor)
Items: 1 to 1000
Major axis: 1997-09-10 00:00:00 to 2012-06-19 00:00:00
Minor axis: 1 to 1000
答案 0 :(得分:2)
您是否将数据放入Panel
?如果你这样做,那么data.apply(f, axis=time_ax)
(其中time_ax
是时间轴)应该做的伎俩。否则,请发布更多不起作用的上下文/数据/示例。
答案 1 :(得分:0)
我认为您可以使用Python lambda函数来实现这一点,如以下链接所示: http://pandas.sourceforge.net/dataframe.html#function-application