I am trying to apply NMF on my dataset, using python scikit-learn. My dataset contains 0 values and missing values. But scikit-learn does not allow NaN value in data matrix. Some posts said that replace missing values with zeros.
my questions are:
If I replace missing value with zeros, how can the algorithm tell the missing values and real zero values?
Is there any other NMF implementations can deal with missing values?
Or if there are any other matrix factorization algorithms can do the missing value prediction?