python - 在 pandas DataFrame 中查找前 3 天的最低值

标签 python pandas

我对Python很陌生。抱歉,如果我的问题很愚蠢..

我正在尝试查找时间序列中前 3 天的最低值。

例如

             price             low
1993-01-29   43.750000         NaN
1993-02-01   43.968700         NaN
1993-02-02   44.125000         43.750000
1993-02-03   42.375000         42.375000
1993-02-04   44.468700         42.375000

我尝试了 .shift()、.min() 等,但都不起作用。 非常感谢您的帮助!

最佳答案

无需手动执行此操作,已经有一个函数:

pd.rolling_min( df['price'], 3 )

1993-01-29       NaN
1993-02-01       NaN
1993-02-02    43.750
1993-02-03    42.375
1993-02-04    42.375

更一般地说,有许多滚动式函数可以处理常见情况,还有一个用于用户函数的 rolling_apply。许多库/包都具有此类功能,您通常可以通过搜索“移动”或“滚动”找到这些功能。

Documentaion for pandas moving/rolling functions

关于python - 在 pandas DataFrame 中查找前 3 天的最低值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31489668/

相关文章:

python - 在考虑 Pandas DataFrame 中的多列的同时对组进行迭代操作

python - 将事件的时间序列 + 持续时间重新采样为并发事件

python : conversion a dataframe column with commas and $ into float

python - 在 Python Pandas 中合并两个数据集

python - 增加字典中计数器的最快方法

python - 数据导入 uploadData API - 通过 GCS 和 App Engine 应用程序实现自动化

python - 返回超出所有先前元素的元素列表

python - 在 Centos 上的 Pycharm 中哪里可以找到 Python-3.6.1 解释器

python - 在数据框中的一列中搜索特定单词

Python Pandas-检索一列中的值,但它们小于第二列的值