加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 使用.loc访问器的pandas datetime索引的布尔掩码

发布时间:2020-12-20 11:03:39 所属栏目:Python 来源:网络整理
导读:Asumme以下玩具代码: import numpy as npimport pandas as pdrng = pd.date_range('1/1/2011',periods=72,freq='H')avec = np.random.rand(len(rng))bvec = np.random.rand(len(rng))df = pd.DataFrame({"A":avec,"B":bvec},index=rng) 我现在可以选择时间
Asumme以下玩具代码:

import numpy as np
import pandas as pd
rng = pd.date_range('1/1/2011',periods=72,freq='H')
avec = np.random.rand(len(rng))
bvec = np.random.rand(len(rng))
df = pd.DataFrame({"A":avec,"B":bvec},index=rng)

我现在可以选择时间间隔的一部分

df.loc["2011-01-02",:]

有没有办法有效地访问与结果切片对应的布尔掩码,即:

array([False,False,True,False],dtype=bool)

我已经尝试过an earlier stackoverflow answer中的建议,但是df.index.date需要很长时间才能在我的数据集上运行…

解决方法

如果性能是重要的链2布尔掩码:

(df.index >= "2011-01-02") & (df.index < "2011-01-03")

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读