def date_to_list()

in ludwig/features/date_feature.py [0:0]


    def date_to_list(date_str, datetime_format, preprocessing_parameters):
        try:
            if datetime_format is not None:
                datetime_obj = datetime.strptime(date_str, datetime_format)
            else:
                datetime_obj = parse(date_str)
        except:
            logging.error(
                'Error parsing date: {}. '
                'Please provide a datetime format that parses it '
                'in the preprocessing section of the date feature '
                'in the model definition. '
                'The preprocessing fill in value will be used.'
                'For more details: '
                'https://ludwig.ai/user_guide/#date-features-preprocessing'
                    .format(date_str)
            )
            fill_value = preprocessing_parameters['fill_value']
            if fill_value != '':
                datetime_obj = parse(fill_value)
            else:
                datetime_obj = datetime.now()

        yearday = (
                datetime_obj.toordinal() -
                date(datetime_obj.year, 1, 1).toordinal() + 1
        )

        midnight = datetime_obj.replace(
            hour=0, minute=0, second=0, microsecond=0
        )
        second_of_day = (datetime_obj - midnight).seconds

        return [
            datetime_obj.year,
            datetime_obj.month,
            datetime_obj.day,
            datetime_obj.weekday(),
            yearday,
            datetime_obj.hour,
            datetime_obj.minute,
            datetime_obj.second,
            second_of_day
        ]