# import necessary libraries
import pandas as pd
import numpy as np
from scipy.interpolate import interp1d

# create sample series
time_series = pd.Series(['2022-01-01', '2022-01-03', '2022-01-04'], 
                        dtype='datetime64[ns]')
values = pd.Series([10, 20, 30])

# create a index with all dates b/w the 
# first and last dates in the series
index = pd.date_range(start = time_series.min(), 
                      end = time_series.max(), freq='D')

# create scipy's interp1d function to fill missing values
interp_func = interp1d(time_series.values.astype(float), values, 
                       kind = 'linear', fill_value = 'extrapolate')

# use function to find values
interp_values = interp_func(index.values.astype(float))

# create a dataframe with the interpolated values 
# and the new index
df = pd.DataFrame({'value': interp_values}, index=index)

# print the results
print(df)