title: Facebook-Prophet: Overflow error when fitting
body: <p>I wanted to practice with prophet so I decided to download the "Yearly mean total sunspot number [1700 - now]" data from this place  </p>
  
  <p><a href="http://www.sidc.be/silso/datafiles#total" rel="nofollow noreferrer">http://www.sidc.be/silso/datafiles#total</a>.</p>
  
  <p>This is my code so far</p>
  
  <pre><code>import numpy as np
  import matplotlib.pyplot as plt
  from fbprophet import Prophet
  from fbprophet.plot import plot_plotly
  import plotly.offline as py
  import datetime
  
  py.init_notebook_mode()
  
  plt.style.use('classic')
  
  df = pd.read_csv('SN_y_tot_V2.0.csv',delimiter=';', names = ['ds', 'y','C3', 'C4', 'C5'])
  
  
  df = df.drop(columns=['C3', 'C4', 'C5'])
  
  df.plot(x="ds", style='-',figsize=(10,5))
  plt.xlabel('year',fontsize=15);plt.ylabel('mean number of sunspots',fontsize=15)
  plt.xticks(np.arange(1701.5, 2018.5,40))
  plt.ylim(-2,300);plt.xlim(1700,2020)
  plt.legend()df['ds'] = pd.to_datetime(df.ds, format='%Y')
  
  
  df['ds'] = pd.to_datetime(df.ds, format='%Y')
  
  m = Prophet(yearly_seasonality=True)
  
  </code></pre>
  
  <p>Everything looks good so far and df['ds'] is in date time format.</p>
  
  <p>However when I execute </p>
  
  <p><code>m.fit(df)</code></p>
  
  <p>I get the following error</p>
  
  <pre><code>---------------------------------------------------------------------------
  OverflowError                             Traceback (most recent call last)
  &lt;ipython-input-57-a8e399fdfab2&gt; in &lt;module&gt;()
  ----&gt; 1 m.fit(df)
  
  /anaconda2/envs/mde/lib/python3.7/site-packages/fbprophet/forecaster.py in fit(self, df, **kwargs)
     1055         self.history_dates = pd.to_datetime(df['ds']).sort_values()
     1056 
  -&gt; 1057         history = self.setup_dataframe(history, initialize_scales=True)
     1058         self.history = history
     1059         self.set_auto_seasonalities()
  
  /anaconda2/envs/mde/lib/python3.7/site-packages/fbprophet/forecaster.py in setup_dataframe(self, df, initialize_scales)
      286             df['cap_scaled'] = (df['cap'] - df['floor']) / self.y_scale
      287 
  --&gt; 288         df['t'] = (df['ds'] - self.start) / self.t_scale
      289         if 'y' in df:
      290             df['y_scaled'] = (df['y'] - df['floor']) / self.y_scale
  
  /anaconda2/envs/mde/lib/python3.7/site-packages/pandas/core/ops/__init__.py in wrapper(left, right)
      990             # test_dt64_series_add_intlike, which the index dispatching handles
      991             # specifically.
  --&gt; 992             result = dispatch_to_index_op(op, left, right, pd.DatetimeIndex)
      993             return construct_result(
      994                 left, result, index=left.index, name=res_name, dtype=result.dtype
  
  /anaconda2/envs/mde/lib/python3.7/site-packages/pandas/core/ops/__init__.py in dispatch_to_index_op(op, left, right, index_class)
      628         left_idx = left_idx._shallow_copy(freq=None)
      629     try:
  --&gt; 630         result = op(left_idx, right)
      631     except NullFrequencyError:
      632         # DatetimeIndex and TimedeltaIndex with freq == None raise ValueError
  
  /anaconda2/envs/mde/lib/python3.7/site-packages/pandas/core/indexes/datetimelike.py in __sub__(self, other)
      521         def __sub__(self, other):
      522             # dispatch to ExtensionArray implementation
  --&gt; 523             result = self._data.__sub__(maybe_unwrap_index(other))
      524             return wrap_arithmetic_op(self, other, result)
      525 
  
  /anaconda2/envs/mde/lib/python3.7/site-packages/pandas/core/arrays/datetimelike.py in __sub__(self, other)
     1278             result = self._add_offset(-other)
     1279         elif isinstance(other, (datetime, np.datetime64)):
  -&gt; 1280             result = self._sub_datetimelike_scalar(other)
     1281         elif lib.is_integer(other):
     1282             # This check must come after the check for np.timedelta64
  
  /anaconda2/envs/mde/lib/python3.7/site-packages/pandas/core/arrays/datetimes.py in _sub_datetimelike_scalar(self, other)
      856 
      857         i8 = self.asi8
  --&gt; 858         result = checked_add_with_arr(i8, -other.value, arr_mask=self._isnan)
      859         result = self._maybe_mask_results(result)
      860         return result.view("timedelta64[ns]")
  
  /anaconda2/envs/mde/lib/python3.7/site-packages/pandas/core/algorithms.py in checked_add_with_arr(arr, b, arr_mask, b_mask)
     1006 
     1007     if to_raise:
  -&gt; 1008         raise OverflowError("Overflow in int64 addition")
     1009     return arr + b
     1010 
  
  OverflowError: Overflow in int64 addition```
  
  I understand that there's an issue with 'ds', but I am not sure whether there is something wring with the column's format or an open issue.
  
  Does anyone have any idea how to fix this? I have checked some issues in github, but they haven't been of much help in this case.
  
  
  Thanks
  
  </code></pre>