gpt4 book ai didi

python - Pandas:如何提取一段时间内的行?

转载 作者:行者123 更新时间:2023-11-30 22:54:33 25 4
gpt4 key购买 nike

我有一个像这样的数据框。

                       value  estimated  \
dttm_timezone
2011-12-31 20:10:00 10.7891 0
2011-12-31 20:15:00 11.2060 0
2011-12-31 20:20:00 19.9975 0
2011-12-31 20:25:00 15.9975 0
2011-12-31 20:30:00 10.9975 0
2011-12-31 20:35:00 13.9975 0
2011-12-31 20:40:00 15.9975 0
2011-12-31 20:45:00 11.7891 0
2011-12-31 20:50:00 10.9975 0
2011-12-31 20:55:00 10.3933 0

通过使用dttm_timezone列信息,我想提取或一个时间内的所有行

我有1年的数据,所以如果我选择天作为持续时间,我应该单独提取365天的数据,如果我选择月份,那么我应该单独提取12个月的数据。

我怎样才能实现这个目标?

最佳答案

让我们使用

import pandas as pd
import numpy as np

tidx = pd.date_range('2010-01-01', '2014-12-31', freq='H', name='dtime')

np.random.seed([3,1415])
df = pd.DataFrame(np.random.rand(len(tidx)), tidx, ['value'])

您可以像这样限制为'2010':

df['2010']

或者

df[df.index.year == 2010]

您可以通过以下方式限制特定月份:

df['2010-04']

或所有四月:

df[df.index.month == 4]

您可以限制为特定日期:

df['2010-04-28']

所有下午 1:00:

df[df.index.hour == 13]

日期范围:

df['2011':'2013']

df['2011-01-01':'2013-06-30']

有很多方法可以做到这一点:

df.loc[(df.index.month == 11) & (df.index.hour == 22)]

链接 ---> The list can go on and on. Please read the docs <---链接

关于python - Pandas:如何提取一段时间内的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37739405/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com