Skip to content
Snippets Groups Projects
Commit ebaa98b7 authored by Jocelyne's avatar Jocelyne
Browse files

pfn1

parent 5a3a1b9f
No related branches found
No related tags found
No related merge requests found
Showing
with 266 additions and 0 deletions
x_vector/y_vector: 0.96626
x_vector/z_vector: 0.69967
y_vector/z_vector: 0.55947
#!/usr/bin/env python3
import math
x_vector = [6,7,12,14,23,41,53,60,69,72,100,90]
y_vector = [2.5,1.1,6.3,2.1,2.9,15.3,20.7,18.4,22,33,50,43]
z_vector = [1,12,18,33,78,99,65,77,81,54,78,77]
def compare(list1, list2):
diff1_2_diff_prod_sum, diff1_sqr_sum, diff2_sqr_sum = 0, 0, 0,
for x, y in zip(list1, list2):
diff1, diff2 = x - sum(list1)/len(list1), y - sum(list2)/len(list2)
diff1_2_diff_prod_sum += diff1 * diff2
diff1_sqr_sum += diff2 ** 2
diff2_sqr_sum += diff1 ** 2
return diff1_2_diff_prod_sum / math.sqrt(diff1_sqr_sum * diff2_sqr_sum)
print('x_vector/y_vector: {:.5f}'.format(compare(x_vector, y_vector)))
print('x_vector/z_vector: {:.5f}'.format(compare(x_vector, z_vector)))
print('y_vector/z_vector: {:.5f}'.format(compare(y_vector, z_vector)))
# Zuerst tragen Sie bitte f"ur den Platzhalter
# h unten die Anzahl der Stunden, die sie f"ur die
# Aufgabe aufgewendet haben, ein. Das k"onnen auch Flie"spunkt-Werte sein,
# also z.B. 1.5, wenn Sie 1 Stunde und 30 Minuten ben"otigt haben.
Bearbeitungszeit: 1 Stunden
# Als n"achstes tragen Sie bitte ein, wie schwierig
# Sie die Aufgabe fanden. Die m"oglichen Werte sind vorgegeben. Bitte
# die Werte streichen, die nicht zutreffen:
Schwierigkeitsgrad: genau richtig
# Schliesslich tragen Sie bitte ein, wie verst"andlich die
# Aufgabenstellung formuliert war. Die m"oglichen Werte sind vorgegeben.
# Bitte die Werte streichen, die nicht zutreffen.
Aufgabenstellung: vollkommen klar
# Falls eine der beiden letzten Kategorien zutrifft, bitte
# kurz angeben, worin die Unklarheiten bestehen.
.PHONY:test
test:test1 test2 test3 test4
@echo "Congratulations: $@ passed"
.PHONY:test1
test1:
@./gen_email.py email_template.txt patient1.tsv | diff - email1.txt
@echo "Congratulations: $@ passed"
.PHONY:test2
test2:
@./gen_email.py email_template.txt patient2.tsv | diff - email2.txt
@echo "Congratulations: $@ passed"
.PHONY:test3
test3:
@./gen_email.py email_template.txt patient3.tsv | diff - email3.txt
@echo "Congratulations: $@ passed"
.PHONY:test4
test4:
@./gen_email.py email_template.txt patient4.tsv | diff - email4.txt
@echo "Congratulations: $@ passed"
.PHONY:clean
clean:
@${RM} -r __pycache__
Die Werte zur Ableitung der Diagosen stammen von
https://www.blutwert.net
To: mabuse@yahoo.com
From: labormedizin@hamburg.de
Sehr geehrter Herr Dr. Mabuse,
Sie hatten uns Proben Ihres Patienten Hans Mueller geschickt.
Die Untersuchungsergebnisse liegen nun vor.
Die Anzahl der Leukozyten (weiße Blutkörperchen) ist mit 2000/mikro l zu niedrig.
Mit freundlichen Grüßen,
Ihr Labormediziner
To: schiwago@icloud.com
From: labormedizin@hamburg.de
Sehr geehrter Herr Dr. Schiwago,
Sie hatten uns Proben Ihrer Patientin Anneliese Schmidt geschickt.
Die Untersuchungsergebnisse liegen nun vor.
Die Anzahl der Thrombozyten (Blutplättchen) ist mit 500000/mikro l zu hoch.
Mit freundlichen Grüßen,
Ihr Labormediziner
To: specht@posteo.de
From: labormedizin@hamburg.de
Sehr geehrter Herr Dr. Specht,
Sie hatten uns Proben Ihrer Patientin Anna Schwartz geschickt.
Die Untersuchungsergebnisse liegen nun vor.
Die Hämoglobin(-konzentration) des roten Blutfarbstoffs ist mit 9g/dl zu niedrig.
Mit freundlichen Grüßen,
Ihr Labormediziner
To: faust@gmx.de
From: labormedizin@hamburg.de
Sehr geehrter Herr Dr. Faust,
Sie hatten uns Proben Ihres Patienten Peter Meier geschickt.
Die Untersuchungsergebnisse liegen nun vor.
Die Hämoglobinmenge pro Erythrozyt ist mit 30 pg/Zelle normal.
Mit freundlichen Grüßen,
Ihr Labormediziner
To: _EMAILADDRESSE_
From: labormedizin@hamburg.de
Sehr _ANSPRACHE_ _NAME_,
Sie hatten uns Proben _PATIENT_ geschickt.
Die Untersuchungsergebnisse liegen nun vor.
Die _MESSUNG_ ist mit _WERT_ _BEFUND_.
Mit freundlichen Grüßen,
Ihr Labormediziner
#!/usr/bin/env python3
import sys
import re
if len(sys.argv)!=3:
sys.stderr.write('Usage: ./gen_email.py <file_gen_email> <file_data>\n')
exit(1)
file_data=sys.argv[2]
file_gen_email=sys.argv[1]
try:
file_data_stream= open(file_data, 'r')
file_gen_stream= open(file_gen_email, 'r')
except IOError as err:
sys.stderr.write('Incorrect filename\n')
exit(1)
###### lab data #########
lab_dict = dict()
for line in file_data_stream:
m = re.search(r'(_[A-Z]+_)\t(.+)', line)
lab_dict[m.group(1)] = m.group(2)
file_data_stream.close()
###### MAIL ##########
mail = file_gen_stream.read()
file_gen_stream.close()
mail_elements = re.findall(r'\w+|\W+', mail)
for el in mail_elements:
if el in lab_dict:
print(lab_dict[el], end='')
else:
print(el, end='')
_EMAILADDRESSE_ mabuse@yahoo.com
_ANSPRACHE_ geehrter Herr Dr.
_NAME_ Mabuse
_PATIENT_ Ihres Patienten Hans Mueller
_MESSUNG_ Anzahl der Leukozyten (weiße Blutkörperchen)
_WERT_ 2000/mikro l
_BEFUND_ zu niedrig
_EMAILADDRESSE_ schiwago@icloud.com
_ANSPRACHE_ geehrter Herr
_NAME_ Dr. Schiwago
_PATIENT_ Ihrer Patientin Anneliese Schmidt
_MESSUNG_ Anzahl der Thrombozyten (Blutplättchen)
_WERT_ 500000/mikro l
_BEFUND_ zu hoch
_EMAILADDRESSE_ specht@posteo.de
_ANSPRACHE_ geehrter Herr
_NAME_ Dr. Specht
_PATIENT_ Ihrer Patientin Anna Schwartz
_MESSUNG_ Hämoglobin(-konzentration) des roten Blutfarbstoffs
_WERT_ 9g/dl
_BEFUND_ zu niedrig
_EMAILADDRESSE_ faust@gmx.de
_ANSPRACHE_ geehrter Herr Dr.
_NAME_ Faust
_PATIENT_ Ihres Patienten Peter Meier
_MESSUNG_ Hämoglobinmenge pro Erythrozyt
_WERT_ 30 pg/Zelle
_BEFUND_ normal
# Zuerst tragen Sie bitte f"ur den Platzhalter
# h unten die Anzahl der Stunden, die sie f"ur die
# Aufgabe aufgewendet haben, ein. Das k"onnen auch Flie"spunkt-Werte sein,
# also z.B. 1.5, wenn Sie 1 Stunde und 30 Minuten ben"otigt haben.
Bearbeitungszeit: 1.25 Stunden
# Als n"achstes tragen Sie bitte ein, wie schwierig
# Sie die Aufgabe fanden. Die m"oglichen Werte sind vorgegeben. Bitte
# die Werte streichen, die nicht zutreffen:
Schwierigkeitsgrad: genau richtig
# Schliesslich tragen Sie bitte ein, wie verst"andlich die
# Aufgabenstellung formuliert war. Die m"oglichen Werte sind vorgegeben.
# Bitte die Werte streichen, die nicht zutreffen.
Aufgabenstellung: weitgehend klar
# Falls eine der beiden letzten Kategorien zutrifft, bitte
# kurz angeben, worin die Unklarheiten bestehen.
File added
.PHONY:test
test:
./cds2protein.py ZNF148_cds.txt | diff - ZNF148_protein.txt
.PHONY:clean
clean:
@${RM} -r __pycache__
The file ZNF148_cds.txt contains the coding sequence of the
gene ZNF148 which codes the 'zinc finger protein 148' of Homo Sapiens.
More information is provided in the the Genbank-entry gbMultiseq/Library.gb
atgaacattgacgacaaactggaaggattgtttcttaaatgtggcggcatagacgaaatgcagtcttcca
ggacaatggttgtaatgggtggagtgtctggccagtctactgtgtctggagagctacaggattcagtact
tcaagatcgaagtatgcctcaccaggagatccttgctgcagatgaagtgttacaagaaagtgaaatgaga
caacaggatatgatatcacatgatgaactcatggtccatgaggagacagtgaaaaatgatgaagagcaga
tggaaacacatgaaagacttcctcaaggactacagtatgcacttaatgtccctataagcgtaaagcagga
aattacttttactgatgtatctgagcaactgatgagagacaaaaaacaaatcagagagccagtagactta
cagaaaaagaagaagcggaaacaacgttctcccgcaaaaatccttacaataaatgaggatggatcacttg
gtttgaaaacccctaaatctcacgtttgtgagcactgcaatgctgcctttagaacgaactatcacttaca
gagacatgtcttcattcatacaggtgaaaaaccatttcaatgtagtcaatgtgacatgcgtttcatacag
aagtacctgcttcagagacatgagaagattcatactggtgaaaaaccatttcgctgtgatgaatgtggta
tgagattcatacaaaaatatcatatggaaaggcataagagaactcatagtggagaaaaaccttaccagtg
tgaatactgtttacagtatttttccagaacagatcgtgtattgaaacataaacgtatgtgccatgaaaat
catgacaaaaaactaaatacatgtgccatcaaaggtggccttctgacatctgaggaagattctggctttt
ctacatcaccaaaagacaactcactgccaaaaaagaaaaggcagaaaacggagaaaaaatcatctggaat
ggacaaagagagtgctttggacaaatctgacctgaaaaaagacaaaaatgattacttgcctgtttattct
tcaagtactaaagtaaaagatgagtatatggttgcagaatatgctgttgaaatgccacattcgtcagttg
ggggctcgcatttagaagatgcgtcaggagaaatacacccacctaagttagttctcaaaaaaattaatag
taagagaagtctgaaacagccactggagcaaaatcaaacaatttcacctttatccacatatgaagagagc
aaagtttcaaagtatgcttttgaacttgtggataaacaggctttactggactcagaaggcaatgctgaca
ttgatcaggttgataatttgcaggaggggcccagtaaacctgtgcatagtagtactaattatgatgatgc
catgcagtttttgaagaagaagcggtatcttcaagcagcaagtaacaacagcagggaatatgcgctgaat
gtgggtaccatacgttctcagccttctgtaacacaagcagctgtggcaagtgtcattgatgaaagtacca
cggcatccatattagagtcacaggcactgaatgtggagattaagagtaatcatgacaaaaatgttattcc
agatgaggtactgcagactctgttggatcattattcccacaaagctaatggacagcatgagatatccttc
agtgttgcagatactgaagtgacttctagcatatcaataaattcttcagaagtaccagaggtcaccccat
cagagaatgttggatcaagctcccaagcatcctcatcagataaagccaacatgttgcaggaatactccaa
gtttctgcagcaggctttggacagaactagccaaaatgatgcctatttgaatagcccgagccttaacttt
gtgactgataaccagaccctcccaaatcagccagcattctcttccatagacaagcaggtctatgccacca
tgcccatcaatagctttcgatcaggaatgaattctccactaagaacaactccagataagtcccactttgg
actaatagttggtgattcacagcactcatttcccttttcaggtgatgagacaaaccatgcttctgccaca
tcaacacaggactttctggatcaagtcacttctcagaagaaagctgaggcccagcctgtccaccaagctt
accaaatgagctcctttgaacagcccttccgtgctccctatcatggatcaagagctggaatagctactca
atttagcactgccaatggacaggtgaaccttcggggaccagggacaagtgctgaattttcagaatttccc
ttggtgaatgtaaatgataatagagctgggatgacatcttcacctgatgccacaactggccagacttttg
gctaaaaaaaaaaaaaaagtgaaataatactggcactttagaacagattaatcaagagtggggttactat
gtgtaaatggagtgctgtacagatttaagagcaatgcgtaataacaagttaagctgatatacgatgataa
taactgcatttcgtttggttagtcagcattctttgaactgccttacatgttgtcacctttatagaagcaa
tgcattacttgttttagatcagaaacttgctattccacccacaccaagtaa
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment