Статистика по нескольким кадрам данных

#python #pandas #data-visualization #scatter-plot #violin-plot

#питон #панды #визуализация данных #точечная диаграмма #скрипка-сюжет

Вопрос:

Я работаю над ISN (мой df-это в основном строка==Индивидуум Население и col==границы сети), и у меня есть 11 разных df с одинаковыми именами col, заполненными (obv) разными значениями. Я хотел бы распечатать и построить статистику для всех из них (желательно на одном графике, чтобы иметь визуальное сравнение среднего, медианы, std и коэффициента вариации), но я понятия не имею, как это сделать.

 dset_ec = pd.read_csv("SNPs.txt", delimiter=" ", engine='python')   my_list = dset_ec.index my_list = list(map(lambda x: x.split('_')[0], my_list)) my_list = list(dict.fromkeys(my_list))   labels = pd.read_csv('population.csv', delimiter=",", engine='python', header=None) labels.columns = ["Individual", "Population"] labels = labels.set_index("Individual") labels_new = labels.reset_index() labels_new["Index_new"] = labels_new[['Individual', 'Population']].agg('_'.join, axis=1) #labels_new dset_ec_T = dset_ec.T #ind==index/row, SNPs==col  #drop the columns with unique values dset_ec_T = dset_ec_T.loc[:,dset_ec_T.apply(pd.Series.nunique) != 1]  #rename the index with IndNum_Pop  extracted_col = labels_new["Index_new"]  dset_ec_T = dset_ec_T.set_index(extracted_col) #filter dset based on the population dset_yri = dset_ec_T.filter(like='_YRI', axis=0) dset_chb = dset_ec_T.filter(like='_CHB', axis=0) dset_jpt = dset_ec_T.filter(like='_JPT', axis=0) dset_ceu = dset_ec_T.filter(like='_CEU', axis=0) dset_mkk = dset_ec_T.filter(like='_MKK', axis=0) dset_mex = dset_ec_T.filter(like='_MEX', axis=0) dset_lwk = dset_ec_T.filter(like='_LWK', axis=0) dset_chd = dset_ec_T.filter(like='_CHD', axis=0) dset_gih = dset_ec_T.filter(like='_GIH', axis=0) dset_tsi = dset_ec_T.filter(like='_TSI', axis=0) dset_asw = dset_ec_T.filter(like='_ASW', axis=0) #statistics for the dsets yri_stat = dset_yri.describe() #scatterplot on the specific dset yri_stat_t = yri_stat.T ax2 = yri_stat_t.plot.scatter(x='std', y='mean', c='50%', colormap='viridis')