import numpy as np import pandas as pd from scipy import stats np.random.seed(0) groups = 10 n = 50 data = pd.DataFrame() for i in range(groups): name = 'var' + str(i) data[name] = np.random.randn(n) for v1 in data: for v2 in data: if v1 <= v2: continue ttest = stats.ttest_ind(data[v1], data[v2]) if ttest.pvalue < 0.05: print('%s and %s are significantly different.' % (v1, v2))