I have a pandas dataframe:
>>> X_df.shape
Out[35]: (177, 2762)
>>> X_df.ix[0:5,1000:1005]
Out[40]:
1000 1001 1002 1003 1004 1005
2016-01-04 119.225 nan nan nan nan nan
2016-01-05 119.225 119.189 119.177 119.160 119.203 119.220
2016-01-06 119.175 119.175 nan 119.204 119.208 119.221
2016-01-07 118.532 nan 118.542 118.529 nan 118.534
2016-01-08 117.861 117.820 117.762 nan 117.686 117.709
I create the mean of first differences along each row:
>>> mu = (X_df.diff(1,axis=1)).mean(axis=1)
>>> mu.head()
Out[42]:
2016-01-04 -0.001
2016-01-05 -0.001
2016-01-06 -0.000
2016-01-07 -0.000
2016-01-08 -0.000
dtype: float64
Then if i try to subtract this mean from each value, I get all nans:
>>> (X_df.diff(1,axis=1)-mu).ix[0:5,1000:1005]
Out[51]:
1000 1001 1002 1003 1004
2016-01-04 nan nan nan nan nan
2016-01-05 nan nan nan nan nan
2016-01-06 nan nan nan nan nan
2016-01-07 nan nan nan nan nan
2016-01-08 nan nan nan nan nan
different way of subtraction
>>> ((X_df.diff(1,axis=1).subtract(mu,axis=1))).ix[0:5,1000:1005]
Out[52]:
1000 1001 1002 1003 1004
2016-01-04 nan nan nan nan nan
2016-01-05 nan nan nan nan nan
2016-01-06 nan nan nan nan nan
2016-01-07 nan nan nan nan nan
2016-01-08 nan nan nan nan nan
I get same results on using mu[:,]
instead of mu
Is there a way to fix this?