Spaces:
Sleeping
Sleeping
| # molecules.py | |
| def generate_molecules(symptoms): | |
| symptoms = symptoms.lower() | |
| categories = { | |
| "pain": { | |
| "name": "Ibuprofen", | |
| "smiles": "CC(C)CC1=CC=C(C=C1)C(C)C(=O)O", | |
| "molecular_weight": "206.28" | |
| }, | |
| "fever": { | |
| "name": "Paracetamol", | |
| "smiles": "CC(=O)NC1=CC=C(O)C=C1", | |
| "molecular_weight": "151.16" | |
| }, | |
| "infection": { | |
| "name": "Amoxicillin", | |
| "smiles": "CC1(C)S[C@@H]2[C@H](NC(=O)C(N)=O)C(=O)N2[C@H]1C(O)=O", | |
| "molecular_weight": "365.40" | |
| }, | |
| "allergy": { | |
| "name": "Cetirizine", | |
| "smiles": "CN1CCC(CC1)OC2=CC=CC=C2C(C(=O)O)N", | |
| "molecular_weight": "388.89" | |
| }, | |
| "nausea": { | |
| "name": "Ondansetron", | |
| "smiles": "CN1CCC(CC1)C2=NC3=CC=CC=C3N=C2N", | |
| "molecular_weight": "293.36" | |
| }, | |
| "stomach": { | |
| "name": "Omeprazole", | |
| "smiles": "COC1=NC=NC2=C1N=CN2S(=O)CC3=CN=C(C=C3)OC", | |
| "molecular_weight": "345.42" | |
| }, | |
| "cough": { | |
| "name": "Dextromethorphan", | |
| "smiles": "CN1CCC23CCCCC2C1CC4=C3C=CC(=C4)OC", | |
| "molecular_weight": "271.40" | |
| }, | |
| "skin": { | |
| "name": "Hydrocortisone", | |
| "smiles": "CC(=O)C1CC[C@H]2[C@@H]3CCC4=CC(=O)C=C[C@]4(C)[C@H]3[C@@H](O)C[C@]12C", | |
| "molecular_weight": "362.46" | |
| }, | |
| "breathing": { | |
| "name": "Salbutamol", | |
| "smiles": "CC(C)(C)NCC(C1=CC(=C(C=C1)O)CO)O", | |
| "molecular_weight": "239.31" | |
| }, | |
| "heart": { | |
| "name": "Nitroglycerin", | |
| "smiles": "C(C(CO[N+](=O)[O-])O[N+](=O)[O-])O[N+](=O)[O-]", | |
| "molecular_weight": "227.09" | |
| } | |
| } | |
| symptom_map = { | |
| # PAIN | |
| "headache": "pain", | |
| "migraine": "pain", | |
| "body pain": "pain", | |
| "joint pain": "pain", | |
| "muscle pain": "pain", | |
| "back pain": "pain", | |
| "neck pain": "pain", | |
| "leg pain": "pain", | |
| "tooth pain": "pain", | |
| "ear pain": "pain", | |
| # FEVER | |
| "fever": "fever", | |
| "high temperature": "fever", | |
| "chills": "fever", | |
| "viral fever": "fever", | |
| "sweating": "fever", | |
| # INFECTION | |
| "infection": "infection", | |
| "bacterial infection": "infection", | |
| "sore throat": "infection", | |
| "swelling": "infection", | |
| "pus": "infection", | |
| # ALLERGY | |
| "allergy": "allergy", | |
| "sneezing": "allergy", | |
| "itching": "allergy", | |
| "watery eyes": "allergy", | |
| "runny nose": "allergy", | |
| # NAUSEA | |
| "nausea": "nausea", | |
| "vomiting": "nausea", | |
| "dizziness": "nausea", | |
| "motion sickness": "nausea", | |
| # STOMACH | |
| "stomach pain": "stomach", | |
| "abdominal pain": "stomach", | |
| "acid reflux": "stomach", | |
| "gas": "stomach", | |
| "indigestion": "stomach", | |
| "bloating": "stomach", | |
| "ulcer": "stomach", | |
| "constipation": "stomach", | |
| "diarrhea": "stomach", | |
| # COUGH | |
| "cough": "cough", | |
| "dry cough": "cough", | |
| "cold": "cough", | |
| "flu": "cough", | |
| "throat irritation": "cough", | |
| # SKIN | |
| "rash": "skin", | |
| "skin irritation": "skin", | |
| "eczema": "skin", | |
| "redness": "skin", | |
| "burning skin": "skin", | |
| "acne": "skin", | |
| # BREATHING | |
| "breathing difficulty": "breathing", | |
| "shortness of breath": "breathing", | |
| "asthma": "breathing", | |
| "wheezing": "breathing", | |
| "lung congestion": "breathing", | |
| # HEART | |
| "chest pain": "heart", | |
| "heart pain": "heart", | |
| "palpitations": "heart", | |
| "high blood pressure": "heart", | |
| "cardiac discomfort": "heart" | |
| } | |
| for key in symptom_map: | |
| if key in symptoms: | |
| category = symptom_map[key] | |
| return [categories[category]] | |
| # DEFAULT | |
| return [{ | |
| "name": "Paracetamol", | |
| "smiles": "CC(=O)NC1=CC=C(O)C=C1", | |
| "molecular_weight": "151.16" | |
| }] |