{'fraction_non_alphanumeric': 0.01235657546337158, 'fraction_numerical': 0.0, 'mean_word_length': 5.129729729729729, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Estimating Missing Attribute Values Using Dynamically-Ordered Attribute Trees

Classification performance can degrade if data contain missing attribute values. Many methods deal with missing information in a simple way, such as replacing missing values with the global or class-conditional mean/mode. We propose a new iterative algorithm to effectively estimate missing attribute values in both training data and test data. The attributes are selected one by one to be completed. For each attribute, the unknown values are predicted using a decision tree built using the other attributes from cases with known values of the attribute. The training set filled in this way is used to classify a tuning set whose prediction error rate decides which attribute is selected to be filled in the current iteration. Prediction error rate of the tuning set is recorded at each iteration to determine an optimal stopping point, as filling all missing values may lead to overfitting. The experiments show that the method generally outperforms several reasonable baseline methods and the ordered attribute trees method proposed by Lobo and Numao.