gpt4 book ai didi

python - 在 matplotlib 日期对象的 numpy 数组中查找行

转载 作者:行者123 更新时间:2023-12-01 05:52:01 25 4
gpt4 key购买 nike

我正在使用 matplotlib.dates 将字符串日期转换为日期对象,认为以后操作起来会更容易。

import matplotlib.dates as md    
def ConvertDate(datestr):
'''
Convert string date into matplotlib date object
'''
datefloat = md.datestr2num(datestr)
return md.num2date(datefloat)

我试图做的是过滤我的结构化数组以告诉我属于特定月份和/或年份的行的索引号

import numpy as np
np.where( data['date'] == 2008 )

我可能可以使用 lambda 函数将每个对象转换为字符串值,如下所示

lambda x: x.strftime('%Y')

比较每个项目,但我不知道将该 lambda 函数放入 np.where 的何处,或者是否可能。

有什么想法吗?或者有更好的方法吗?

最佳答案

在出现大量错误消息之后,我想我找到了自己问题的答案。

[ x for x in range(len(data)) if data['date'][x].year == 2008 ]

我进行了列表理解以返回与查询匹配的结构化数组的索引。我还包括@hayden的建议,使用 .year 而不是 strftime() 也许 numpy.where() 仍然更快,但这适合我的需求现在。

关于python - 在 matplotlib 日期对象的 numpy 数组中查找行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13912411/

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