Я всего python нуб только что начал со сценариями. У меня есть данные из трех образцов, и для каждого образца у меня есть список последовательностей пептидов, например:
d = {'Sample 1': ['QSFLEVSYYPMAGYIKEDSIM', 'MLPIQTRIAS', 'AAVACTVLRCLAAEQQTSRSVDEAY'], 'Sample 2': ['QSFLEVSYYPTEIRQMGM', 'AEAARLVLAARIKGDAM', 'AAVACTVLRCLAAEQQTSRSVDEAY'], 'Sample 3': ['AAIGVHLGCTSACVAVYAADRGMKL', 'QSFLEVSYYPTEIRQMGM', 'AAVACTVLRCLAAEQQTSRSVDEAY']}
df = pd.DataFrame(data=d)
Что я хочу сделать, это выяснить, какой из этих пептидов является взаимным в трех образцах, и построить график диаграмма Венна
Я сделал это с двумя образцами, но потом я не смог найти большую помощь, поэтому я сделал график Венна «вручную»
import matplotlib_venn as vplt
from matplotlib import pyplot as plt
from matplotlib_venn import venn2, venn2_circles
import pandas as pd
import numpy as np
df_txt = pd.read_csv('all_Peptides_sortFN.txt', delimiter='\t')
df_txt.count()
df_txt['Peptides'] = df_txt["FN"] + df_txt["FN_18"]
AllPeps = df_txt.groupby('Peptides').count()
AllPeps.drop_duplicates(subset=None, keep='first', inplace=False)
AllPeps = df_txt.groupby('Peptides').count()
AllPeps.drop_duplicates(subset=None, keep='first', inplace=False)
AllPeps['result'] = np.where(AllPeps['FN'] == AllPeps['FN_18'], '1', '0')
AllPeps.head()
AllPeps.result.value_counts()
plt.figure(figsize=(10,10))
v = venn2(subsets=(3411, 1737, 1150), set_labels = ('Filgrastim', 'Filgrastim 18O'))
plt.title('Comparison of peptides in just digested and 18O-labeled Filgrastim(new batch)')
plt.savefig('VennFN.png')
plt.show()
Я ценю каждое предложение:)