【发布时间】:2014-06-14 20:44:55
【问题描述】:
我有一组 30 年的每日日期时间。我正在尝试使用np.where 按月和日过滤此数组,以便找到一年中每一天的相应数据条目的平均值。
但是,我得到了错误:
AttributeError: 'list' object has no attribute 'month'
我这样做时可以正确查询数据:
print "dates[100].month: ", dates[100].month
有什么方法可以使用numpywhere函数查询datetime条目?
我目前的代码是:
clim = np.zeros((12,31))
m_arr = range(1,13) # months array
d_arr = range(1,32) # days array
for i in range(len(m_arr)):
for j in range(len(d_arr)):
# finding indexes of the dates array
tt, = np.where((dates.month == i) & (dates.day == j))
data2 = np.zeros(len(tt))
dates2 = np.zeros(len(tt))
if len(tt) > 0:
for num in range(len(tt)):
site = tt[num]
dates2[num] = dates[site]
data2[num] = data[site]
clim[i,j]=data2[~np.isnan(data2)].mean() # some nan entries in data
【问题讨论】:
标签: python arrays datetime numpy