Define a Model for predicting missing values in Data Set
You could try a classification approach like random forests for categorical data.
For example in your brand name assumption, Take your existing data and treat the brand name as the response variable. So when you give the values of the other features in the entry where the brand name is missing it should try to predict what the brand name is. 

The reason I am suggesting random forests is that it uses an ensemble approach. Please explore the working of Random Forests if you don't know the working behind it.