def scatter_old(self): maskMalig = self.labels == 1 maskBenig = self.labels == 0 embed_method = 'euclidean' rating_method = 'euclidean' # 'chebyshev' embed_benig_d = flatten_dm(calc_distance_matrix(self.embedding[maskBenig], embed_method)) embed_malig_d = flatten_dm(calc_distance_matrix(self.embedding[maskMalig], embed_method)) embed_cross_d = flatten_dm( calc_cross_distance_matrix(self.embedding[maskMalig], self.embedding[maskBenig], embed_method)) rating = np.array(self.rating) rating_benig_d = flatten_dm(calc_distance_matrix(rating[maskBenig], rating_method)) rating_malig_d = flatten_dm(calc_distance_matrix(rating[maskMalig], rating_method)) rating_cross_d = flatten_dm(calc_cross_distance_matrix(rating[maskMalig], rating[maskBenig], rating_method)) # Plot outputs plt.figure() plt.scatter(embed_cross_d, rating_cross_d, color='blue') plt.scatter(embed_malig_d, rating_malig_d, color='red') plt.scatter(embed_benig_d, rating_benig_d, color='green') plt.xlabel('Embed') plt.ylabel('Rating')
def scatter(self, X, Y, xMethod = 'euclidean', yMethod = 'euclidean', sub=False): xVec = self.load(X) yVec = self.load(Y) maskMalig = self.labels == 1 maskBenig = self.labels == 0 x_benig_d = flatten_dm(calc_distance_matrix( xVec[maskBenig], xMethod)) x_malig_d = flatten_dm(calc_distance_matrix( xVec[maskMalig], xMethod)) x_cross_d = flatten_dm(calc_cross_distance_matrix( xVec[maskMalig], xVec[maskBenig], xMethod)) y_benig_d = flatten_dm(calc_distance_matrix( yVec[maskBenig], yMethod)) y_malig_d = flatten_dm(calc_distance_matrix( yVec[maskMalig], yMethod)) y_cross_d = flatten_dm(calc_cross_distance_matrix( yVec[maskMalig], yVec[maskBenig], yMethod)) print('{}-{}:'.format(X,Y)) print('\tCross R2 = {}'.format(linear_regression(x_cross_d, y_cross_d)[1])) print('\tMalig R2 = {}'.format(linear_regression(x_malig_d, y_malig_d)[1])) print('\tBenig R2 = {}'.format(linear_regression(x_benig_d, y_benig_d)[1])) print('\tCross R = {}'.format(pearsonr(x_cross_d, y_cross_d)[0])) print('\tMalig R = {}'.format(pearsonr(x_malig_d, y_malig_d)[0])) print('\tBenig R = {}'.format(pearsonr(x_benig_d, y_benig_d)[0])) # Plot outputs plt.figure() if sub: plt.subplot(311) plt.scatter(x_cross_d, y_cross_d, color='blue', alpha=0.5, s=10) if sub: plt.subplot(312) plt.scatter(x_malig_d, y_malig_d, color='red', alpha=0.2, s=10) plt.ylabel(Y) if sub: plt.subplot(313) plt.scatter(x_benig_d, y_benig_d, color='green', alpha=0.1, s=10) plt.xlabel(X) #if X is 'embed' and Y is 'malig': # plt.figure() # plt.plot(np.histogram2d(np.squeeze(x_malig_d), np.squeeze(y_malig_d), [5, 8])[0].T) if sub: plt.figure() plt.title('Cross') plt.plot(np.histogram2d(np.squeeze(x_cross_d), np.squeeze(y_cross_d), [5,5], normed=True)[0].T) plt.xlabel('Malig Rating') plt.legend(['0', '1', '2', '3', '4']) plt.figure() plt.title('Malig') plt.plot(np.histogram2d(np.squeeze(x_malig_d), np.squeeze(y_malig_d), [5,5], normed=True)[0].T) plt.xlabel('Malig Rating') plt.legend(['0', '1', '2', '3', '4']) plt.figure() plt.title('Benig') plt.plot(np.histogram2d(np.squeeze(x_benig_d), np.squeeze(y_benig_d), [5,5], normed=True)[0].T) plt.xlabel('Malig Rating') plt.legend(['0', '1', '2', '3', '4'])