python - 在 python 数据框中访问前几行的最佳方法是什么?
问题描述
我有一个来自 yfinance api 的 DataFrame 结果。
stock = yf.download ('PETR4.SA', start = '2019-01-01', stop = '2020-12-31')
stock.head()
Open High Low Close Adj Close Volume
2019-01-02 22.549999 24.200001 22.280001 24.059999 23.284782 104534800
2019-01-03 23.959999 24.820000 23.799999 24.650000 23.855774 95206400
2019-01-04 24.850000 24.940001 24.469999 24.719999 23.923517 72119800
2019-01-07 24.850000 25.920000 24.700001 25.110001 24.300953 1217119
我想将某一天的最高价与前一天或前后 2 或 3 天的 HIGH 值进行比较。如何访问函数中的前几行?
解决方案
>>> stock.shift(periods=1).head() # the result is logically deduced.
Open High Low Close Adj Close Volume
2019-01-02 NaN NaN NaN NaN NaN NaN
2019-01-03 22.549999 24.200001 22.280001 24.059999 23.284782 104534800
2019-01-04 23.959999 24.820000 23.799999 24.650000 23.855774 95206400
2019-01-07 24.850000 24.940001 24.469999 24.719999 23.923517 72119800
2019-01-08 24.850000 25.920000 24.700001 25.110001 24.300953 1217119
?
推荐阅读
- sql - 选择多次出现的ID,不同的数据
- laravel - 如何在 Laravel 中增加页面点击数?
- c# - 如何过滤值列表中的 DataRows?
- system-verilog - 如何在断言中使信号稳定一段时间
- android - 你可以在 ViewStub 上使用 BindingAdapter 吗?
- javascript - 如何让边框像进度条一样向前移动(react.js)
- javascript - TypeError:无法读取未定义的属性“左侧”
- python - 遍历 2 个不同的 Excel 工作表中的列
- c# - 在不重新打开文件的情况下,整数内容从我上次序列化它们时开始发生变化
- spring - 需要用于 REST Api 单一登录的 Spring Security 基本身份验证?