python - 从重新采样的数据框中一次选择一个日期

标签 python pandas

我有一个刻度数据的数据框,我已将其重新采样为分钟数据。做一个 Vanilla

df.resample('1Min').ohlc().fillna(method='ffill')

super 简单。

我现在需要每天一次迭代重新采样的数据帧,但我无法找出最好的方法。

我尝试采用 1 分钟重新采样的数据帧,然后将其重新采样为“1D”,然后将其转换为列表以进行迭代和过滤,但这给了我一个列表:

Timestamp('2011-09-13 00:00:00', freq='D')

对象,它不会让我根据它来切片数据帧。

这看起来很简单,但我就是找不到答案。谢谢-

#sample data_1m dataframe
data_1m.head()


                     open  high  low  close
timestamp                                  
2011-09-13 13:53:00   5.8   6.0  5.8    6.0
2011-09-13 13:54:00   5.8   6.0  5.8    6.0
2011-09-13 13:55:00   5.8   6.0  5.8    6.0
2011-09-13 13:56:00   5.8   6.0  5.8    6.0
2011-09-13 13:57:00   5.8   6.0  5.8    6.0
...

#i want to get everything for date 2011-09-13 im trying

days_in_df = data_1m.resample('1D').ohlc().fillna(method='ffill').index.to_list()


data_1m.loc[days_in_df[0]]

KeyError: Timestamp('2011-09-13 00:00:00', freq='D')

最佳答案

这是我的两分钱。我不会重新采样数据,而是向框架添加另一个索引级别:

data_1m = data_1m.reset_index()
data_1m['date'] = data_1m['timestamp'].astype('datetime64[D]')
data_1m = data_1m.set_index(['date', 'timestamp'])

并选择一整天:

data_1m.loc['2011-09-13']

关于python - 从重新采样的数据框中一次选择一个日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56977181/

相关文章:

python - 带套接字的简单 Python 聊天应用程序

python - 删除行索引数据框 Pandas

python - 从 Numpy 结果分配 Koalas 列

Python eval 表示包含网络路径(反斜杠)、奇怪行为或预期的字典的字符串?

python - 如何解释 K-Means 聚类的轮廓系数?

python - 通过具有变化模式的文本行进行正则表达式

python - 如何为我的数据集创建类似直方图的条形图?

python - 使用可变列对 Pandas 数据框进行排序

python - 使用pyenv时出现错误?

python - Google Cloud Functions (Python) 中的随机连接错误