Adding dataframe with different index to time series

Viewed 215

I have a time series like

             var
date 
2020-03-10   77
2020-03-11   88
2020-03-12   99 

and I have another dataframe of exact same size of the above time series

        mean 
0        12
1        13
2        14 

I want to add this mean column to the above time series like

             var    mean
date 
2020-03-10   77      12
2020-03-11   88      13
2020-03-12   99      14

I tried searching but havent got any results.

1 Answers

You can assign numpy array for prevent data alignment (what create column filled missing values, because different index values):

df1 = df1.assign(mean = df2['mean'].to_numpy())

Or:

df1['mean'] = df2['mean'].to_numpy()

Another idea is change index in df2 same like df1, so is possible use DataFrame.join:

df2 = df2.set_index(df1.index)
df1 = df1.join(df2)
Related