Skip to content
/ AKK Public

Automatic Classification of Diseases. This program allows the user given some diseases as text to automatically classify them into ICD-10.

Notifications You must be signed in to change notification settings

Combo1/AKK

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

AKK

Automatische Klassifikation von Krankheiten. Dieses Programm ermöglicht es dem Benutzer Krankheiten im Textformat in das ICD-10-GM-Format zu klassifizieren.

Wie wird dieses Programm verwendet?

Um Ihre Krankheiten zu klassifizieren, führen Sie die Datei "classify.py" aus. Allerdings müssen Sie das Verzeichnis in Zeile 2: "data = pd.read_csv('INSERT-YOUR-PATH', sep=" ", names = ["Krankheit"], skip_blank_lines=True)" in Ihr eigenes Verzeichnis ändern. Die Datei muss nur die Diagnose gefolgt von einem Zeilenumbruch/Enter enthalten. Eine Beispieldatei wird als "sample.txt" bereitgestellt.

Um die Applikation auszuführen werden des Weiteren Dateien des Bundesinstituts für Arznei- und Medizinprodukte benötigt. Diese sind unter (https://www.bfarm.de/SharedDocs/Downloads/DE/Kodiersysteme/klassifikationen/icd-10-gm/version2022/icd10gm2022syst-meta_zip.html?nn=841246&cms_dlConfirm=true&cms_calledFromDoc=841246) und (https://www.bfarm.de/SharedDocs/Downloads/DE/Kodiersysteme/klassifikationen/alpha-id/version2022/alphaidse2022_20220114_zip.html?nn=841246&cms_dlConfirm=true&cms_calledFromDoc=841246) benötigt. Leider kann ich diese Dateien aus rechtlichen Gründen nicht öffentlich zur Verfügung stellen.

Wie funktioniert es?

Um unsere Krankheiten automatisch zu klassifizieren werden sämtliche Krankheiten mit ICD-10-GM Beschreibungen verglichen (siehe: https://www.bfarm.de/SharedDocs/Downloads/DE/Kodiersysteme/klassifikationen/icd-10-gm/version2022/icd10gm2022syst-meta_zip.html?nn=841246&cms_dlConfirm=true&cms_calledFromDoc=841246). Dieser Vergleich läuft mithilfe von "Approximate String Matching" ab. Approximate String Matching ist dazu fähig ähnliche aber nicht komplett gleiche Text/Sequenzen einander zuzuordnen. Approximate String Matching beinhaltet eine Vielzahl an Methoden, wir verwenden aber nur die "Token Set Ratio" (siehe https://github.com/seatgeek/thefuzz).

Zusätzlich zu den ICD-10-GM Beschreibungen haben wir sämtliche ICD-10-GM Codes in Altmeyers Enzyklopädie gesucht und alle Krankheiten die darunter fallen in "synonyme.csv" geschrieben, sodass wir jede Krankheit mit diesen expliziten Krankheitsbezeichnungen vergleichen. Des Weiteren verwenden wir auch noch das alphabetische Verzeichnis aus ICD-10-GM, welches Krankheitsbezeichnungen aus dem stationären und ambulanten Alltagsgebrauch beinhaltet, um unsere Krankheiten zu vergleichen.

Abschließend verwenden wir noch den "Sorensen Dice Coefficient" in einer Hybrid-Version mit der Token Set Ratio, um unsere Texte zu vergleichen. Diese Hybrid-Lösung benötigt viel Rechenleistung auf ihrer Maschine, sodass wir Multiprocessing verwenden, um sämtliche Texte miteinander zu vergleichen.

About

Automatic Classification of Diseases. This program allows the user given some diseases as text to automatically classify them into ICD-10.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages