Skip to content

Commit 7f59bb3

Browse files
committed
fasta_gc now classifies and runs under main()
1 parent 4e0c2a7 commit 7f59bb3

File tree

2 files changed

+26
-13
lines changed

2 files changed

+26
-13
lines changed

test.fa ae.fa

File renamed without changes.

fasta_gc.py

+26-13
Original file line numberDiff line numberDiff line change
@@ -46,19 +46,32 @@ def gc_content_percent(sequence):
4646
percent_gc = (gc * 100) / atcg
4747
return percent_gc
4848

49-
# Make sure we have a file name
50-
if not len(sys.argv) == 2:
51-
print "Usage: python", sys.argv[0], "<sequences.fa>"
52-
exit(1)
49+
def classify_percent(percent):
50+
if percent < 35:
51+
classification = 'Low'
52+
elif percent < 55:
53+
classification = 'Normal'
54+
else:
55+
classification = 'High'
56+
return classification
5357

54-
filename = sys.argv[1]
58+
def main():
59+
# Make sure we have a file name
60+
if not len(sys.argv) == 2:
61+
print "Usage: python", sys.argv[0], "<sequences.fa>"
62+
exit(1)
5563

56-
# Read the sequences into a dictionary
57-
sequences = read_fasta_dict(filename)
64+
filename = sys.argv[1]
5865

59-
# Loop over the keys (sequence names) in the dictionary
60-
for name in sequences:
61-
sequence = sequences[name]
62-
gc = gc_content_percent(sequence)
63-
print gc, name
64-
66+
# Read the sequences into a dictionary
67+
sequences = read_fasta_dict(filename)
68+
69+
# Loop over the keys (sequence names) in the dictionary
70+
for name in sequences:
71+
sequence = sequences[name]
72+
percent = gc_content_percent(sequence)
73+
classification = classify_percent(percent)
74+
print percent, classification, name
75+
76+
if __name__ == '__main__':
77+
main()

0 commit comments

Comments
 (0)