def insert_time_to_recession(self): # Get Data Read hndl_Data_Read = EMF_DataSeries_Handle(self.hndl_DB, ticker='US_Rec_Ind') hndl_Data_Read.save_series_local() # Insert Time To hndl_Data_Wrte = EMF_DataSeries_Handle( self.hndl_DB, name='Months to Next Recession', ticker='US_TimeUntilRec', insertIfNot=True) data = hndl_Data_Read.get_series_values() dates = hndl_Data_Read.get_series_dates() trns_Data = transform_TimeToValue(data, {TIME_TO_VALUE: 1})[DATA_KEY] count = self.find_time_to_recession_limits(trns_Data) trns_Data = trns_Data[:-count] trns_Dates = dates[:-count] hndl_Data_Wrte.save_series_db(trns_Dates, trns_Data) hndl_Data_Wrte.periodicity = hndl_Data_Read.periodicity # Insert Time Since hndl_Data_Wrte = EMF_DataSeries_Handle( self.hndl_DB, name='Months since Last Recession', ticker='US_TimeSinceRec', insertIfNot=True) trns_Data = transform_TimeSinceValue(data, {TIME_SINCE_VALUE: 1})[DATA_KEY] count = self.find_time_since_recession_limits(trns_Data) trns_Data = trns_Data[count:] trns_Dates = dates[count:] hndl_Data_Wrte.save_series_db(trns_Dates, trns_Data) hndl_Data_Wrte.periodicity = hndl_Data_Read.periodicity
def select_resp_words_all_permutations(self): log.info('WORDSELECT: Response Words: Choosing All Data Tickers') if self._resp_data_tickers is None: self.__add_resp_data_tickers() log.info('WORDSELECT: Response Words: Choosing All Transformations') trns_list = {} for trns in self.resp_trns_ptrns: for (k, v_list) in self.resp_trns_kwargs.iteritems(): for v in v_list: hndl_Trns = EMF_Transformation_Handle(trns) hndl_Trns.set_extra_parameter(k, v) trns_list[str(hndl_Trns)] = hndl_Trns trns_list = trns_list.values() log.info('WORDSELECT: Response Words: Created {0} Transformations'.format(len(trns_list))) self._resp_words = [] count = 0 for ticker in self.resp_data_tickers: hndl_Data = EMF_DataSeries_Handle(self.hndl_DB, ticker=ticker) hndl_Data.save_series_local() for hndl_Trns in trns_list: hndl_Word = EMF_WordSeries_Handle(self.hndl_DB, hndl_Data, hndl_Trns) self._resp_words.append(hndl_Word) count += 1 log.info('WORDSELECT: Response Words: Created {0} Response Words'.format(count))