No, I have not seen any values other than nan since the first iteration.
My input was not normalized. I have normalized it after your suggestion, now it works as it is expected (thanks a lot for that) but the accuracy has significantly decreased. Here is how I have normalized the input:
scaler = preprocessing.StandardScaler()
scaled_df = scaler.fit_transform(df)
scaled_df = pd.DataFrame(scaled_df, columns=df.columns)