def compare_distances(A,B,random_samples=[],s=200,pvalues=False):
if len(random_samples) == 0:
random_samples = np.zeros(A.shape[1],dtype=np.bool)
random_samples[:min(s,A.shape[1])] = True
np.random.shuffle(random_samples)
dist_x = distance.pdist(A[:,random_samples].T,'euclidean')
dist_y = distance.pdist(B[:,random_samples].T,'euclidean')
pear = pearsonr(dist_x,dist_y)
spear = spearmanr(dist_x,dist_y)
if pvalues:
return pear,spear
else:
return pear[0],spear[0]
评论列表
文章目录