在python中滚动中位数

yue*_*rhu 4 python finance quantitative-finance pandas

我有一些基于每日收盘价的股票数据.我需要能够将这些值插入到python列表中并获得最后30个关闭的中位数.有没有这样做的python库?

Sve*_*ach 9

在纯Python中a,您可以将数据放在Python列表中

median = sum(sorted(a[-30:])[14:16]) / 2.0
Run Code Online (Sandbox Code Playgroud)

(这假定a至少有30个项目.)

使用NumPy包,您可以使用

median = numpy.median(a[-30:])
Run Code Online (Sandbox Code Playgroud)


Mik*_*ton 5

你考虑过熊猫吗?它基于numpy并可以自动将时间戳与您的数据相关联,并丢弃任何未知日期,只要您用numpy.nan. 它还通过 matplotlib 提供了一些相当强大的图形。

基本上它是为 Python 中的财务分析而设计的。

  • 不错:http://pandas.sourceforge.net/generated/pandas.stats.api.rolling_median.html?highlight=median#pandas.stats.api.rolling_median (3认同)