def selectHourlyData(self, hourlyData, analysisPeriod):
# separate data
indexList, listInfo = self.separateList(hourlyData, self.strToBeFound)
#separate lists of lists
separatedLists = []
for i in range(len(indexList)-1):
selList = []
[selList.append(float(x)) for x in hourlyData[indexList[i]+7:indexList[i+1]]]
separatedLists.append(selList)
# read analysis period
stMonth, stDay, stHour, endMonth, endDay, endHour = self.readRunPeriod(analysisPeriod)
selHourlyData =[];
for l in range(len(separatedLists)):
[selHourlyData.append(item) for item in listInfo[l][:4]]
selHourlyData.append('Hourly')
selHourlyData.append((stMonth, stDay, stHour))
selHourlyData.append((endMonth, endDay, endHour))
# select data
stAnnualHour = self.date2Hour(stMonth, stDay, stHour)
endAnnualHour = self.date2Hour(endMonth, endDay, endHour)
# check it goes from the end of the year to the start of the year
if stAnnualHour < endAnnualHour:
for i, item in enumerate(separatedLists[l][stAnnualHour-1:endAnnualHour]):
if stHour-1 <= (i + stHour - 1)%24 <= endHour-1: selHourlyData.append(item)
type = True
else:
for i, item in enumerate(separatedLists[l][stAnnualHour-1:]):
if stHour-1 <= (i + stHour - 1)%24 <= endHour-1: selHourlyData.append(item)
for i, item in enumerate(separatedLists[l][:endAnnualHour]):
if stHour-1 <= i %24 <= endHour-1: selHourlyData.append(item)
type = False
return selHourlyData
评论列表
文章目录