def __call__(self): # z-scoring if self.treedata is None: raise SortingError("No examples for similarity measure available!") zs = ZScore(self.data, replace_inf=True) data_zs = zs.normalize(self.data) # z-scored mean value of pca procjected treedata mu = zs.normalize(self.treedata) data_zs, mu = filter_nans(data_zs, mu) mu = mu.mean(axis=0) distsq = [np.power((x - mu), 2).sum() for x in data_zs] return np.sqrt(distsq)
def __call__(self): # z-scoring if self.treedata is None: raise SortingError("No examples for similarity measure available!") if self.treedata.shape[1] < 2: raise SortingError(("CosineSimilarity needs at least 2 " "features for sorting")) zs = ZScore(self.data, replace_inf=True) data_zs = zs.normalize(self.data) # z-scored mean value of pca procjected treedata mu = zs.normalize(self.treedata) data_zs, mu = filter_nans(data_zs, mu) mu = mu.mean(axis=0) denom = np.sqrt((mu**2).sum()) * np.sqrt((data_zs**2).sum(axis=1)) s_cos = np.sum(mu * data_zs, axis=1) / denom return -1.0 * s_cos
def __call__(self): # z-scoring if self.treedata is None: raise SortingError("No examples for similarity measure available!") if self.treedata.shape[1] < 2: raise SortingError(("CosineSimilarity needs at least 2 " "features for sorting")) zs = ZScore(self.data, replace_inf=True) data_zs = zs.normalize(self.data) # z-scored mean value of pca procjected treedata mu = zs.normalize(self.treedata) data_zs, mu = filter_nans(data_zs, mu) mu = mu.mean(axis=0) denom = np.sqrt((mu**2).sum())*np.sqrt((data_zs**2).sum(axis=1)) s_cos = np.sum(mu*data_zs, axis=1)/denom return -1.0*s_cos