Mercurial > repos > jay > pdaug_peptide_core_functions
comparison PDAUG_AA_Property_Based_Peptide_Descriptor/PDAUG_AA_Property_Based_Peptide_Descriptor.py @ 0:e743e76b8991 draft
"planemo upload for repository https://github.com/jaidevjoshi83/pdaug commit a9bd83f6a1afa6338cb6e4358b63ebff5bed155e"
author | jay |
---|---|
date | Wed, 28 Oct 2020 02:07:30 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:e743e76b8991 |
---|---|
1 from modlamp.descriptors import * | |
2 import pandas as pd | |
3 import os | |
4 | |
5 | |
6 | |
7 def PepFasta(InFile): | |
8 file = open(InFile) | |
9 lines = file.readlines() | |
10 | |
11 Index = [] | |
12 Peptides = [] | |
13 | |
14 for line in lines: | |
15 if '>' in line: | |
16 Index.append(line.strip('\n')) | |
17 else: | |
18 Peptides.append(line.strip('\n')) | |
19 | |
20 return Peptides, Index | |
21 | |
22 | |
23 def AutoCorrCal(InFile, window, ScaleName, OutFile): | |
24 | |
25 list_pep_name,_ = PepFasta(InFile) | |
26 | |
27 AMP = PeptideDescriptor(list_pep_name, ScaleName) | |
28 AMP.calculate_autocorr(int(window)) | |
29 df = AMP.descriptor | |
30 | |
31 columns = ["CroAut_"+str(i) for i in range(len(df[0]))] | |
32 df = pd.DataFrame(df, columns=columns) | |
33 df.to_csv(OutFile, index=False,sep='\t') | |
34 | |
35 def CrossCorrCal(InFile, window, ScaleName, OutFile): | |
36 | |
37 list_pep_name,_ = PepFasta(InFile) | |
38 | |
39 AMP = PeptideDescriptor(list_pep_name, ScaleName) | |
40 AMP.calculate_crosscorr(int(window)) | |
41 df = AMP.descriptor | |
42 | |
43 columns = ["CroCor_"+str(i) for i in range(len(df[0]))] | |
44 df = pd.DataFrame(df, columns=columns) | |
45 df.to_csv(OutFile, index=False,sep='\t') | |
46 | |
47 def CalculateMovementCal(InFile, window, angle, modality, ScaleName, OutFile): | |
48 | |
49 | |
50 list_pep_name,_ = PepFasta(InFile) | |
51 | |
52 AMP = PeptideDescriptor(list_pep_name, ScaleName) | |
53 AMP.calculate_moment(int(window), int(angle), modality) | |
54 df = AMP.descriptor | |
55 | |
56 df = pd.DataFrame(df, columns=['Movement']) | |
57 df.to_csv(OutFile, index=False,sep='\t') | |
58 | |
59 def CalculateGlobalCal(InFile, WindowSize, modality, ScaleName, OutFile): | |
60 | |
61 list_pep_name,_ = PepFasta(InFile) | |
62 | |
63 AMP = PeptideDescriptor(list_pep_name, ScaleName) | |
64 AMP.calculate_global(int(WindowSize), modality) | |
65 df = AMP.descriptor | |
66 | |
67 df = pd.DataFrame(df, columns=['Global']) | |
68 df.to_csv(OutFile, index=False, sep='\t') | |
69 | |
70 def CalculateProfileCal(InFile, prof_type, WindowSize, ScaleName, OutFile): | |
71 | |
72 list_pep_name,_ = PepFasta(InFile) | |
73 | |
74 AMP = PeptideDescriptor(list_pep_name, ScaleName) | |
75 AMP.calculate_profile(prof_type, int(WindowSize)) | |
76 df = AMP.descriptor | |
77 | |
78 df = pd.DataFrame(df, columns=['hyPhoPro','hyPhoMov']) | |
79 df.to_csv(OutFile, index=False, sep='\t') | |
80 | |
81 def CalculateArcCal(InFile, modality, OutFile): | |
82 | |
83 list_pep_name,_ = PepFasta(InFile) | |
84 | |
85 AMP = PeptideDescriptor(list_pep_name, scalename="peparc") | |
86 AMP.calculate_arc(modality) | |
87 df = AMP.descriptor | |
88 | |
89 columns = ["Arc_"+str(i) for i in range(len(df[0]))] | |
90 df = pd.DataFrame(df, columns=columns) | |
91 df.to_csv(OutFile, index=False, sep='\t') | |
92 | |
93 if __name__=="__main__": | |
94 | |
95 import argparse | |
96 | |
97 parser = argparse.ArgumentParser(description='Deployment tool') | |
98 subparsers = parser.add_subparsers() | |
99 | |
100 Aut = subparsers.add_parser('AutoCorrCal') | |
101 Aut.add_argument("-i","--InFile", required=True, default=None, help="") | |
102 Aut.add_argument("-w","--WindowSize", required=False, default=7, help="") | |
103 Aut.add_argument("-s","--ScaleName", required=False, default="Eisenberg", help="") | |
104 Aut.add_argument("-o","--OutFile", required=False, default="Descriptor.tsv", help="") | |
105 | |
106 Cro = subparsers.add_parser('CrossCorrCal') | |
107 Cro.add_argument("-i","--InFile", required=True, default=None, help="") | |
108 Cro.add_argument("-w","--WindowSize", required=False, default=7, help="") | |
109 Cro.add_argument("-s","--ScaleName", required=False, default="Eisenberg", help="") | |
110 Cro.add_argument("-o","--OutFile", required=False, default="Descriptor.tsv", help="") | |
111 | |
112 Mov = subparsers.add_parser('CalculateMovement') | |
113 Mov.add_argument("-i","--InFile", required=True, default=None, help="") | |
114 Mov.add_argument("-w","--WindowSize", required=False, default=1000, help="") | |
115 Mov.add_argument("-a","--Angle", required=False, default=100, help="") | |
116 Mov.add_argument("-m","--Modality", required=False, default="max", help="") | |
117 Mov.add_argument("-s","--ScaleName", required=False, default="Eisenberg", help="") | |
118 Mov.add_argument("-o","--OutFile", required=False, default="Descriptor.tsv", help="") | |
119 | |
120 Glo = subparsers.add_parser('GlobalCal') | |
121 Glo.add_argument("-i","--InFile", required="", default="", help="") | |
122 Glo.add_argument("-w","--WindowSize", required=False, default=1000, help="") | |
123 Glo.add_argument("-m","--Modality", required=False, default="max", help="") | |
124 Glo.add_argument("-s","--ScaleName", required=False, default="Eisenberg", help="") | |
125 Glo.add_argument("-o","--OutFile", required=False, default="Descriptor.tsv", help="") | |
126 | |
127 Pro = subparsers.add_parser('ProfileCal') | |
128 Pro.add_argument("-i","--InFile", required=True, default=None, help="") | |
129 Pro.add_argument("-p","--ProfType", required=False, default="text", help="") | |
130 Pro.add_argument("-w","--WindowSize", required=False, default=7, help="") | |
131 Pro.add_argument("-s","--ScaleName", required=False, default="Eisenberg", help="") | |
132 Pro.add_argument("-o","--OutFile", required=False, default="Descriptor.tsv", help="") | |
133 | |
134 Arc = subparsers.add_parser('ArcCal') | |
135 Arc.add_argument("-i","--InFile", required=True, default=None, help="") | |
136 Arc.add_argument("-m","--Modality", required=False, default="max", help="") | |
137 Arc.add_argument("-o","--OutFile", required=False, default="Descriptor.tsv", help="") | |
138 | |
139 args = parser.parse_args() | |
140 | |
141 if sys.argv[1] == 'AutoCorrCal': | |
142 AutoCorrCal(args.InFile, args.WindowSize, args.ScaleName, args.OutFile) | |
143 elif sys.argv[1] == 'CrossCorrCal': | |
144 CrossCorrCal(args.InFile, args.WindowSize, args.ScaleName, args.OutFile) | |
145 elif sys.argv[1] == 'CalculateMovement': | |
146 CalculateMovementCal(args.InFile, args.WindowSize, args.Angle, args.Modality, args.ScaleName, args.OutFile) | |
147 elif sys.argv[1] == 'GlobalCal': | |
148 CalculateGlobalCal(args.InFile, args.WindowSize, args.Modality, args.ScaleName, args.OutFile) | |
149 elif sys.argv[1] == 'ProfileCal': | |
150 CalculateProfileCal(args.InFile, args.ProfType, args.WindowSize, args.ScaleName, args.OutFile) | |
151 elif sys.argv[1] == 'ArcCal': | |
152 CalculateArcCal(args.InFile, args.Modality, args.OutFile) | |
153 else: | |
154 print ("You entered Wrong Values: ") |