Causal Discovery from Medical Data: Dealing with Missing Values and a Mixture of Discrete and Continuous Data