def _set_default_args()

in orbit/template/ktrlite.py [0:0]


    def _set_default_args(self):
        """Set default attributes for None"""
        if self.seasonality is None:
            self._seasonality = list()
            self._seasonality_fs_order = list()
        elif not isinstance(self._seasonality, list) and isinstance(
            self._seasonality, (int, float)
        ):
            self._seasonality = [self.seasonality]

        # set some defaults for seasonality_fs_order
        if self._seasonality and self._seasonality_fs_order is None:
            self._seasonality_fs_order = [2] * len(self._seasonality)
        elif not isinstance(self._seasonality_fs_order, list) and isinstance(
            self._seasonality_fs_order, (int, float)
        ):
            self._seasonality_fs_order = [self.seasonality_fs_order]

        if len(self._seasonality_fs_order) != len(self._seasonality):
            raise IllegalArgument("length of seasonality and fs_order not matching")

        for k, order in enumerate(self._seasonality_fs_order):
            if 2 * order > self._seasonality[k] - 1:
                raise IllegalArgument(
                    "reduce seasonality_fs_order to avoid over-fitting"
                )

        if not isinstance(self.seasonal_initial_knot_scale, list) and isinstance(
            self.seasonal_initial_knot_scale * 1.0, float
        ):
            self._seasonal_initial_knot_scale = [
                self.seasonal_initial_knot_scale
            ] * len(self._seasonality)
        else:
            self._seasonal_initial_knot_scale = self.seasonal_initial_knot_scale

        if not isinstance(self.seasonal_knot_scale, list) and isinstance(
            self.seasonal_knot_scale * 1.0, float
        ):
            self._seasonal_knot_scale = [self.seasonal_knot_scale] * len(
                self._seasonality
            )
        else:
            self._seasonal_knot_scale = self.seasonal_knot_scale