Missing values in data are common in real world applications. There are several methods that deal with this problem. In this research we developed a new version of the mean shift clustering algorithm that deals with datasets with missing values. We use a weighted distance function that deals with datasets with missing values, that was defined in our previous work. To compute the distance between two points that may have attributes with missing values, only the mean and the variance of the distribution of the attribute are required. Thus, after they have been computed, the distance can be computed in O(1). Furthermore, we use this distance to derive a formula for computing the mean shift vector for each data point, showing that the mean shift runtime complexity is the same as the Euclidian mean shift runtime. We experimented on six standard numerical datasets from different fields. On these datasets we simulated missing values and compared the performance of the mean shift clustering algorithm using our distance and the suggested mean shift vector to other three basic methods. Our experiments show that mean shift using our distance function outperforms mean shift using other methods for dealing with missing values.