2016-01-18 109 views
0

我有一个numpy.ndarray(数据)有5个元素,每个元素有2042行和两列。第一列包含日期(间隔15分钟),第二列包含温度。我正在制作一个脚本,可以在24小时内找到最高温度。我有一个工作脚本。numpy ndarray的查找索引

x1=0 
y1=95 
maxTblue=[] 

for i in range(int(len(data[0])/96)+1): 
    #collect the max temp for 24-hr period 
    maxTblue.append(max(data[0][x1:y1,1])) 
    #add 96 to shift to the next 24-hr period 
    x1+=96 
    y1+=96 

现在,我希望能够收集每个24小时内发生最高温度的日期。我尝试了下面的脚本,但它给了我错误的日期。日期应该增加24小时,但当前脚本从第一个24小时内返回日期。

maxdateBlue=[] 
locblue=[] 
x3=0 
y3=95 
for i in range(int(len(data[0])/96)+1): 
    #index for the max temp 
    locblue.append(np.where(data[0][x3:y3,1]==maxTblue[i])) 
    #date where the max temp occurs 
    maxdateBlue.append(data[0][locblue[i],0]) 
    x3+=96 
    y3+=96 

如何正确使用np.where,或者我如何使用其他指数命令,以查找出来的时候我的最大温度下发生?

回答