comparison PDAUG_AA_Property_Based_Peptide_Descriptor/PDAUG_AA_Property_Based_Peptide_Descriptor.py @ 0:0973f093d98f draft

"planemo upload for repository https://github.com/jaidevjoshi83/pdaug commit a9bd83f6a1afa6338cb6e4358b63ebff5bed155e"
author jay
date Wed, 28 Oct 2020 02:31:40 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:0973f093d98f
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: ")