Once all annotations are calculated, the dataset is cleaned. Empty strings and numpy.nan values are changed to 'None' to ensure consistency. The type of integer columns is explicitly set to Int64. All floating-point values except for MAX_PHASE are rounded to four decimal places. During the calculations and after cleaning the dataset, a set of basic checks is performed to ensure its consistency. It is checked that all 'None' values are properly recognised as such and object-type columns do not contain other types such as integers. If a compound-target pair does not have a pChEMBL value, it is checked that the pair is in the DRUG_MECHANISM table. The numbers of NULL values for ligand efficiencies, ChEMBL-and RDKit-compound properties, ATC levels and target class annotations in the dataset are checked against the expected number of NULL values based on the number of missing values in the respective tables.