diff --git a/R/R/prophet.R b/R/R/prophet.R index 19436a3..6318d04 100644 --- a/R/R/prophet.R +++ b/R/R/prophet.R @@ -169,6 +169,9 @@ validate_inputs <- function(m) { stop('Holidays dataframe must have ds field.') } m$holidays$ds <- as.Date(m$holidays$ds) + if (any(is.na(m$holidays))) { + stop('Found NA in the holidays dataframe.') + } has.lower <- exists('lower_window', where = m$holidays) has.upper <- exists('upper_window', where = m$holidays) if (has.lower + has.upper == 1) { diff --git a/python/fbprophet/forecaster.py b/python/fbprophet/forecaster.py index 40386c3..038ff8c 100644 --- a/python/fbprophet/forecaster.py +++ b/python/fbprophet/forecaster.py @@ -169,6 +169,8 @@ class Prophet(object): raise ValueError('holidays must be a DataFrame with "ds" and ' '"holiday" columns.') self.holidays['ds'] = pd.to_datetime(self.holidays['ds']) + if self.holidays.isnull().any().any(): + raise ValueError('Found a NaN in holidays dataframe') has_lower = 'lower_window' in self.holidays has_upper = 'upper_window' in self.holidays if has_lower + has_upper == 1: