I am looking for a machine learning algorithm that can handle input data that has missing parameters.

Example:
A model is trained using data that consist 10 input parameter. Data with 2 of the 10 parameters having value of NaN is used to make prediction. 

Is there any machine learning algorithm that can make prediction with this data or do I have to process the NaN value in any way first? Is there a machine learning algorithm that has built-in function that processes NaN values?

---

Maybe my question wasn´t detailled enough. I do have all data needed to train the model and i do know how to handle data before training in terms of missing values. My question was meant differently. Once i´ve trained the model and i would use the model in production, live data, and it occurs that only get, for example, values of 8 of the 10 features that i trained the model with, is there an algorithm that can still perform a prediction? My first thought would be setting up a default value for each of the 10 values and set this value if i would receive a Nan value but i hoped for an algorithm that is able to handle this itself. So that the model is able to replace a Nan value with best suited replacement (mean, back-fill or what ever)