<p>There isn't always one best way to fill missing values in fact.
Here are some methods used in python to fill values of time series.<a href="https://stackoverflow.com/questions/49308530/missing-values-in-time-series-in-python">missing-values-in-time-series-in-python</a></p>
<p>Filling missing values a.k.a imputation is a well-studied topic in computer science and statistics.</p>
<p>Previously, we used to impute data with mean values regardless of data types. A big problem that mean imputation(all const imputation) triggers is mutations in time series.</p>
<p>Later, autoregressive(AR) and moving average(MA) used for modeling time series are used in imputation. These methods have a strong theoretical basis <a href="https://online.stat.psu.edu/stat510/" rel="nofollow noreferrer">STAT510</a> and are used to forecast/impute time series.</p>
<p>Matrix Factorization is another important method, such as TRMF, SVD, PCA. A recent benchmark about MF imputation was published in PVLDB.<a href="http://www.vldb.org/pvldb/vol13/p768-khayati.pdf" rel="nofollow noreferrer">Mind the Gap: An Experimental Evaluation of Imputation of Missing Values Techniques in Time Series</a>.</p>
<p>Besides, there are other machine/deep learning methods proposed recently. There is a survey about imputation methods used in time series<a href="https://arxiv.org/abs/2011.11347" rel="nofollow noreferrer">Time Series Data Imputation: A Survey on Deep Learning Approaches</a>, which may help you a lot. However, the methods mentioned in this survey are not accurate enough.</p>
<p>Back to your question, MICE is just a framework where you can use any regression algorithms. It assumes that different columns(A, B, C, and E, F) are correlated.</p>
<p><strong>Forecasting and imputation are the same by nature.</strong> You can think that forecasting is a special case of imputation without succeeding data.</p>
<p>You'd better try more imputation methods to find the best one.</p>
Whats the best way to fill the missing data in the time series using Python?
<p>For the first time, I am trying to work on a case study using python for continuous dataframe, which is the time series data of properties during the period 2006-2016</p>

<p>But I have missing values for the year 2015-16 in columns A,B,C,D and 2006-07 in E and F columns.
I am trying to impute the values and fill the data.</p>

<p><a href="https://i.stack.imgur.com/Ngp6s.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Ngp6s.png" alt="**DataFrame**"></a></p>

<p>I have tried MICE and Interpolation but am not sure if it's even correct or not. which method to apply and how to apply it in python?
I have gone through links: </p>

<p><a href="https://www.theanalysisfactor.com/seven-ways-to-make-up-data-common-methods-to-imputing-missing-data/" rel="nofollow noreferrer">https://www.theanalysisfactor.com/seven-ways-to-make-up-data-common-methods-to-imputing-missing-data/</a>
<a href="https://www.researchgate.net/post/What_is_a_reliable_method_of_dealing_with_missing_data_in_time_series_records" rel="nofollow noreferrer">https://www.researchgate.net/post/What_is_a_reliable_method_of_dealing_with_missing_data_in_time_series_records</a></p>

<p>Should I be using forecasting method instead of imputation to fill the data?</p>

<p>Please help.</p>