An adaptive K-Nearest Neighbours algorithm for the imputation of static and dynamic mixed-type clinical data