药物安全
简介
美国食品药品监督管理局不良事件报告系统(FAERS)包含数以百万计的报告,这些报告将药物与不良事件、患者预后和报告人信息联系起来,构成了一个复杂的网络关系,传统的关联数据库难以对其进行分析。当不良事件数据分散在多个规范化的表中时,制药公司和监管机构在检测安全信号、理解多种药物相互作用以及识别高风险患者群体方面面临巨大挑战。像 Neo4j 这样的图数据库擅长对这些互联关系进行建模,能够快速遍历药物-事件-患者-预后网络,从而发现隐藏的模式和因果路径。通过跨异构数据类型(从分子靶点到现实世界的患者预后)执行多跳查询的能力,使得图技术成为药物警戒和上市后监测的理想选择。通过将不良事件表示为知识图谱,分析师可以快速识别药物间的相互作用,检测新兴的安全信号,并评估关系模式中的因果关系,而这在关联系统中通常需要复杂的连接操作。
场景
在此场景中,我们将使用 Neo4j 对 FAERS 数据进行建模,并回答以下问题:
-
特定药物有多少起不良事件?
-
特定药物最常见的不良事件是什么?
-
特定报告人类型最常见的不良事件是什么?
-
特定预后最常见的不良事件是什么?
解决方案
传统的关联方法处理 FAERS 数据需要大量的表连接来关联药物、不良事件、患者、预后和联合用药。图数据库通过将每个实体表示为节点,并将关系作为数据模型中的一等公民,消除了这种复杂性。这实现了:
-
跨药物-事件-患者网络进行即时关系遍历,无需昂贵的表连接
-
针对复杂药物相互作用和多跳因果路径的模式检测
-
通过识别异常事件聚类的图算法进行信号检测
-
连接分子靶点与现实预后的实时查询
-
与 DrugBank、临床试验和科学文献等外部知识源的集成
数据模型
Neo4j 的不良事件分析数据模型围绕关键实体及其关系展开:
核心节点标签
-
Case(病例)- 病例代表不良报告案例的概况,包含基本人口统计学信息(年龄、性别、体重)以及报告人和报告地点的信息。Case节点还具有用于对病例进行分组的辅助标签,例如Adult(成人)、Infant(婴儿)、Child(儿童)、Male(男性)、Female(女性)等。 -
Drug(药物)- 这是药物名称,包含可用时的活性成分,并附注药物名称是否使用了经过验证的商品名。 -
DrugCase(药物病例)- 这代表了药物参与不良事件的特定实例,详细说明了药物的角色(主要嫌疑、次要嫌疑、伴随用药或未给药)。如果不良事件涉及多种药物,一个Case可以拥有多个DrugCase节点。 -
Manufacturer(制造商)- 报告不良事件的公司,可以是制药公司、医疗保健提供者或消费者。 -
Outcome(预后)- 不良事件的临床结果,例如住院、残疾、危及生命或死亡。 -
MedDraTerm(医学术语)- (国际医学用语词典)(MedDRA)是一种用于分类不良事件的标准化医学术语。MedDraTerm节点代表不良反应数据中报告的具体不良事件、症状或状况。
关键关系
-
CONCERNS_DRUG- (:DrugCase)-[:CONCERNS_DRUG]→(:Drug):将特定的DrugCase实例连接到不良事件中涉及的Drug。 -
PRIMARY_SUSPECT_DRUG- (:Case)-[:PRIMARY_SUSPECT_DRUG]→(:DrugCase):识别被怀疑是导致不良事件的主要药物。 -
SECONDARY_SUSPECT_DRUG- (:Case)-[:SECONDARY_SUSPECT_DRUG]→(:DrugCase):识别被怀疑是导致不良事件的次要药物。 -
INTERACTING_DRUG- (:Drug)-[:INTERACTING_DRUG]→(:Drug):识别相互作用的药物。 -
CONCOMITANT_DRUG- (:Case)-[:CONCOMITANT_DRUG]→(:DrugCase):识别在病例中与嫌疑药物同时服用的药物。 -
DRUG_NOT_ADMINISTERED- (:Case)-[:DRUG_NOT_ADMINISTERED]→(:DrugCase):识别在病例中未给予的药物。 -
HAS_OUTCOME- (:Case)-[:HAS_OUTCOME]→(:Outcome): 将病例链接到其临床预后。 -
HAS_REACTION- (:Case)-[:HAS_REACTION]→(:MedDraTerm):将药物病例链接到其特定的不良反应。 -
INDICATION_FOR_USE- (:DrugCase)-[:INDICATION_FOR_USE]→(:MedDraTerm):将药物病例链接到其适应症。 -
REPORTED_BY- (:Case)-[:REPORTED_BY]→(:Manufacturer):将病例连接到报告该病例的制造商。
演示数据
此 Cypher 语句将在 Neo4j 数据库中创建示例图(注:此为模拟数据)
// --- Outcomes (6) ---
MERGE (o1:Outcome {code: "DE", description: "Death"})
MERGE (o2:Outcome {code: "LT", description: "Life-Threatening"})
MERGE (o3:Outcome {code: "HO", description: "Hospitalization - Initial or Prolonged"})
MERGE (o4:Outcome {code: "DS", description: "Disability"})
MERGE (o5:Outcome {code: "CA", description: "Congenital Anomaly"})
MERGE (o6:Outcome {code: "OT", description: "Other Serious (Important Medical Events)"});
// --- Manufacturers (10) ---
MERGE (m1:Manufacturer {name: "Pfizer Inc."})
MERGE (m2:Manufacturer {name: "AstraZeneca"})
MERGE (m3:Manufacturer {name: "Johnson & Johnson"})
MERGE (m4:Manufacturer {name: "Novartis AG"})
MERGE (m5:Manufacturer {name: "Roche Holding AG"})
MERGE (m6:Manufacturer {name: "GlaxoSmithKline plc"})
MERGE (m7:Manufacturer {name: "Merck & Co."})
MERGE (m8:Manufacturer {name: "Abbott Laboratories"})
MERGE (m9:Manufacturer {name: "Bristol-Myers Squibb"})
MERGE (m10:Manufacturer {name: "Sanofi S.A."});
// --- Drugs (15) ---
MERGE (d1:Drug {name: "Ibuprofen", activeIngredient: "Ibuprofen", isValidatedTradeNameUsed: false})
MERGE (d2:Drug {name: "Aspirin", activeIngredient: "Acetylsalicylic acid", isValidatedTradeNameUsed: false})
MERGE (d3:Drug {name: "Amoxicillin", activeIngredient: "Amoxicillin", isValidatedTradeNameUsed: false})
MERGE (d4:Drug {name: "Glucophage", activeIngredient: "Metformin hydrochloride", isValidatedTradeNameUsed: true})
MERGE (d5:Drug {name: "Zestril", activeIngredient: "Lisinopril", isValidatedTradeNameUsed: true})
MERGE (d6:Drug {name: "Lipitor", activeIngredient: "Atorvastatin calcium", isValidatedTradeNameUsed: true})
MERGE (d7:Drug {name: "Synthroid", activeIngredient: "Levothyroxine sodium", isValidatedTradeNameUsed: true})
MERGE (d8:Drug {name: "Lopressor", activeIngredient: "Metoprolol tartrate", isValidatedTradeNameUsed: true})
MERGE (d9:Drug {name: "Coumadin", activeIngredient: "Warfarin sodium", isValidatedTradeNameUsed: true})
MERGE (d10:Drug {name: "Prilosec", activeIngredient: "Omeprazole", isValidatedTradeNameUsed: true})
MERGE (d11:Drug {name: "Zoloft", activeIngredient: "Sertraline hydrochloride", isValidatedTradeNameUsed: true})
MERGE (d12:Drug {name: "Prednisone", activeIngredient: "Prednisone", isValidatedTradeNameUsed: false})
MERGE (d13:Drug {name: "Humira", activeIngredient: "Adalimumab", isValidatedTradeNameUsed: true})
MERGE (d14:Drug {name: "Lantus", activeIngredient: "Insulin glargine", isValidatedTradeNameUsed: true})
MERGE (d15:Drug {name: "Plavix", activeIngredient: "Clopidogrel bisulfate", isValidatedTradeNameUsed: true});
// --- MedDra Terms (20) ---
MERGE (m1:MedDraTerm {name: "Nausea"})
MERGE (m2:MedDraTerm {name: "Vomiting"})
MERGE (m3:MedDraTerm {name: "Headache"})
MERGE (m4:MedDraTerm {name: "Dizziness"})
MERGE (m5:MedDraTerm {name: "Rash"})
MERGE (m6:MedDraTerm {name: "Anaphylaxis"})
MERGE (m7:MedDraTerm {name: "Dyspnoea"})
MERGE (m8:MedDraTerm {name: "Chest pain"})
MERGE (m9:MedDraTerm {name: "Myalgia"})
MERGE (m10:MedDraTerm {name: "Diarrhoea"})
MERGE (m11:MedDraTerm {name: "Abdominal pain"})
MERGE (m12:MedDraTerm {name: "Fatigue"})
MERGE (m13:MedDraTerm {name: "Thrombocytopenia"})
MERGE (m14:MedDraTerm {name: "Hepatotoxicity"})
MERGE (m15:MedDraTerm {name: "Acute renal failure"})
MERGE (m16:MedDraTerm {name: "Hypertension"})
MERGE (m17:MedDraTerm {name: "Hypoglycaemia"})
MERGE (m18:MedDraTerm {name: "Bradycardia"})
MERGE (m19:MedDraTerm {name: "Stevens-Johnson syndrome"})
MERGE (m20:MedDraTerm {name: "Drug interaction"});
// --- Cases (30) with secondary labels ---
CREATE (c1:Case:Adult:Female {id: 1, caseId: 10001, caseVersion: 1, sex: "F", ageInYears: 45, ageUnit: "YR", weight: 68.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: false, isInitialReport: true, eventDate: "2024-01-15"});
CREATE (c2:Case:Adult:Female {id: 2, caseId: 10002, caseVersion: 1, sex: "F", ageInYears: 52, ageUnit: "YR", weight: 72.5, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: true, isInitialReport: true, eventDate: "2024-02-03"});
CREATE (c3:Case:Adult:Female {id: 3, caseId: 10003, caseVersion: 1, sex: "F", ageInYears: 38, ageUnit: "YR", weight: 61.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Consumer", reporterCountry: "GB", occurrenceCountry: "GB", isEsubmission: true, isInitialReport: false, eventDate: "2024-02-18"});
CREATE (c4:Case:Adult:Female {id: 4, caseId: 10004, caseVersion: 1, sex: "F", ageInYears: 60, ageUnit: "YR", weight: 78.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "DE", occurrenceCountry: "DE", isEsubmission: false, isInitialReport: true, eventDate: "2024-03-05"});
CREATE (c5:Case:Adult:Female {id: 5, caseId: 10005, caseVersion: 1, sex: "F", ageInYears: 41, ageUnit: "YR", weight: 65.2, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "FR", occurrenceCountry: "FR", isEsubmission: true, isInitialReport: true, eventDate: "2024-03-22"});
CREATE (c6:Case:Adult:Female {id: 6, caseId: 10006, caseVersion: 1, sex: "F", ageInYears: 55, ageUnit: "YR", weight: 80.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: false, isInitialReport: true, eventDate: "2024-04-10"});
CREATE (c7:Case:Adult:Female {id: 7, caseId: 10007, caseVersion: 1, sex: "F", ageInYears: 48, ageUnit: "YR", weight: 58.5, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Consumer", reporterCountry: "CA", occurrenceCountry: "CA", isEsubmission: true, isInitialReport: true, eventDate: "2024-04-28"});
CREATE (c8:Case:Adult:Consumer:Female {id: 8, caseId: 10008, caseVersion: 1, sex: "F", ageInYears: 33, ageUnit: "YR", weight: 62.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "AU", occurrenceCountry: "AU", isEsubmission: false, isInitialReport: true, eventDate: "2024-05-14"});
CREATE (c9:Case:Adult:Female {id: 9, caseId: 10009, caseVersion: 1, sex: "F", ageInYears: 57, ageUnit: "YR", weight: 75.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "IT", occurrenceCountry: "IT", isEsubmission: true, isInitialReport: true, eventDate: "2024-06-01"});
CREATE (c10:Case:Adult:Female {id: 10, caseId: 10010, caseVersion: 1, sex: "F", ageInYears: 43, ageUnit: "YR", weight: 69.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "JP", occurrenceCountry: "JP", isEsubmission: false, isInitialReport: true, eventDate: "2024-06-17"});
CREATE (c11:Case:Adult:Male {id: 11, caseId: 10011, caseVersion: 1, sex: "M", ageInYears: 50, ageUnit: "YR", weight: 85.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: false, isInitialReport: true, eventDate: "2024-01-22"});
CREATE (c12:Case:Adult:Male {id: 12, caseId: 10012, caseVersion: 1, sex: "M", ageInYears: 44, ageUnit: "YR", weight: 90.5, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: true, isInitialReport: true, eventDate: "2024-02-10"});
CREATE (c13:Case:Adult:Male {id: 13, caseId: 10013, caseVersion: 1, sex: "M", ageInYears: 62, ageUnit: "YR", weight: 78.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Consumer", reporterCountry: "GB", occurrenceCountry: "GB", isEsubmission: false, isInitialReport: true, eventDate: "2024-03-01"});
CREATE (c14:Case:Adult:Consumer:Male {id: 14, caseId: 10014, caseVersion: 1, sex: "M", ageInYears: 35, ageUnit: "YR", weight: 82.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "DE", occurrenceCountry: "DE", isEsubmission: true, isInitialReport: true, eventDate: "2024-04-05"});
CREATE (c15:Case:Adult:Male {id: 15, caseId: 10015, caseVersion: 1, sex: "M", ageInYears: 58, ageUnit: "YR", weight: 95.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: false, isInitialReport: true, eventDate: "2024-05-20"});
CREATE (c16:Case:Adult:Male {id: 16, caseId: 10016, caseVersion: 1, sex: "M", ageInYears: 47, ageUnit: "YR", weight: 88.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "FR", occurrenceCountry: "FR", isEsubmission: true, isInitialReport: true, eventDate: "2024-07-03"});
CREATE (c17:Case:Adult:Male {id: 17, caseId: 10017, caseVersion: 1, sex: "M", ageInYears: 39, ageUnit: "YR", weight: 76.5, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Consumer", reporterCountry: "CA", occurrenceCountry: "CA", isEsubmission: false, isInitialReport: false, eventDate: "2024-07-19"});
CREATE (c18:Case:Adult:Male {id: 18, caseId: 10018, caseVersion: 1, sex: "M", ageInYears: 53, ageUnit: "YR", weight: 91.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "AU", occurrenceCountry: "AU", isEsubmission: true, isInitialReport: true, eventDate: "2024-08-05"});
CREATE (c19:Case:Elderly:Female {id: 19, caseId: 10019, caseVersion: 1, sex: "F", ageInYears: 72, ageUnit: "YR", weight: 60.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: false, isInitialReport: true, eventDate: "2024-01-30"});
CREATE (c20:Case:Elderly:Female {id: 20, caseId: 10020, caseVersion: 1, sex: "F", ageInYears: 80, ageUnit: "YR", weight: 55.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: true, isInitialReport: true, eventDate: "2024-03-15"});
CREATE (c21:Case:Elderly:Consumer:Female {id: 21, caseId: 10021, caseVersion: 1, sex: "F", ageInYears: 68, ageUnit: "YR", weight: 63.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "GB", occurrenceCountry: "GB", isEsubmission: false, isInitialReport: true, eventDate: "2024-05-09"});
CREATE (c22:Case:Elderly:Male {id: 22, caseId: 10022, caseVersion: 1, sex: "M", ageInYears: 75, ageUnit: "YR", weight: 73.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: false, isInitialReport: true, eventDate: "2024-04-22"});
CREATE (c23:Case:Elderly:Male {id: 23, caseId: 10023, caseVersion: 1, sex: "M", ageInYears: 82, ageUnit: "YR", weight: 70.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "DE", occurrenceCountry: "DE", isEsubmission: true, isInitialReport: false, eventDate: "2024-06-28"});
CREATE (c24:Case:Child:Consumer:Female {id: 24, caseId: 10024, caseVersion: 1, sex: "F", ageInYears: 7, ageUnit: "YR", weight: 22.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: false, isInitialReport: true, eventDate: "2024-02-25"});
CREATE (c25:Case:Child:Male {id: 25, caseId: 10025, caseVersion: 1, sex: "M", ageInYears: 9, ageUnit: "YR", weight: 28.5, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: true, isInitialReport: true, eventDate: "2024-03-10"});
CREATE (c26:Case:Adolescent:Female {id: 26, caseId: 10026, caseVersion: 1, sex: "F", ageInYears: 15, ageUnit: "YR", weight: 52.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: false, isInitialReport: true, eventDate: "2024-05-02"});
CREATE (c27:Case:Adolescent:Consumer:Male {id: 27, caseId: 10027, caseVersion: 1, sex: "M", ageInYears: 17, ageUnit: "YR", weight: 65.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "GB", occurrenceCountry: "GB", isEsubmission: true, isInitialReport: true, eventDate: "2024-06-14"});
CREATE (c28:Case:Infant:Female {id: 28, caseId: 10028, caseVersion: 1, sex: "F", ageInYears: 1, ageUnit: "YR", weight: 9.5, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: false, isInitialReport: true, eventDate: "2024-07-08"});
CREATE (c29:Case:Infant:Male {id: 29, caseId: 10029, caseVersion: 1, sex: "M", ageInYears: 2, ageUnit: "YR", weight: 12.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "CA", occurrenceCountry: "CA", isEsubmission: true, isInitialReport: true, eventDate: "2024-08-12"});
CREATE (c30:Case:Adult:Male:HealthProfessional {id: 30, caseId: 10030, caseVersion: 1, sex: "M", ageInYears: 42, ageUnit: "YR", weight: 83.0, weightUnit: "KG", reportCode: "EXP", reporterOccupation: "Healthcare Professional", reporterCountry: "US", occurrenceCountry: "US", isEsubmission: false, isInitialReport: true, eventDate: "2024-09-01"});
// --- DrugCase nodes (70) ---
CREATE (dc1:DrugCase {primaryId: 10001, drugSeq: 1, name: "Ibuprofen", routeOfAdministration: "Oral", doseAmount: "400", doseUnit: "mg", doseFrequency: "TID", doseForm: "Tablet"});
CREATE (dc2:DrugCase {primaryId: 10002, drugSeq: 1, name: "Amoxicillin", routeOfAdministration: "Oral", doseAmount: "500", doseUnit: "mg", doseFrequency: "TID", doseForm: "Capsule"});
CREATE (dc3:DrugCase {primaryId: 10003, drugSeq: 1, name: "Zoloft", routeOfAdministration: "Oral", doseAmount: "50", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc4:DrugCase {primaryId: 10004, drugSeq: 1, name: "Lipitor", routeOfAdministration: "Oral", doseAmount: "40", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc5:DrugCase {primaryId: 10005, drugSeq: 1, name: "Glucophage", routeOfAdministration: "Oral", doseAmount: "1000", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc6:DrugCase {primaryId: 10006, drugSeq: 1, name: "Coumadin", routeOfAdministration: "Oral", doseAmount: "5", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc7:DrugCase {primaryId: 10007, drugSeq: 1, name: "Humira", routeOfAdministration: "Subcutaneous", doseAmount: "40", doseUnit: "mg", doseFrequency: "Q2W", doseForm: "Injection"});
CREATE (dc8:DrugCase {primaryId: 10008, drugSeq: 1, name: "Zestril", routeOfAdministration: "Oral", doseAmount: "10", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc9:DrugCase {primaryId: 10009, drugSeq: 1, name: "Prednisone", routeOfAdministration: "Oral", doseAmount: "20", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc10:DrugCase {primaryId: 10010, drugSeq: 1, name: "Synthroid", routeOfAdministration: "Oral", doseAmount: "100", doseUnit: "mcg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc11:DrugCase {primaryId: 10011, drugSeq: 1, name: "Plavix", routeOfAdministration: "Oral", doseAmount: "75", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc12:DrugCase {primaryId: 10012, drugSeq: 1, name: "Lopressor", routeOfAdministration: "Oral", doseAmount: "50", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc13:DrugCase {primaryId: 10013, drugSeq: 1, name: "Lantus", routeOfAdministration: "Subcutaneous", doseAmount: "20", doseUnit: "IU", doseFrequency: "QD", doseForm: "Injection"});
CREATE (dc14:DrugCase {primaryId: 10014, drugSeq: 1, name: "Ibuprofen", routeOfAdministration: "Oral", doseAmount: "600", doseUnit: "mg", doseFrequency: "QID", doseForm: "Tablet"});
CREATE (dc15:DrugCase {primaryId: 10015, drugSeq: 1, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "325", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc16:DrugCase {primaryId: 10016, drugSeq: 1, name: "Amoxicillin", routeOfAdministration: "Oral", doseAmount: "875", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc17:DrugCase {primaryId: 10017, drugSeq: 1, name: "Lipitor", routeOfAdministration: "Oral", doseAmount: "20", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc18:DrugCase {primaryId: 10018, drugSeq: 1, name: "Coumadin", routeOfAdministration: "Oral", doseAmount: "7.5", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc19:DrugCase {primaryId: 10019, drugSeq: 1, name: "Glucophage", routeOfAdministration: "Oral", doseAmount: "500", doseUnit: "mg", doseFrequency: "TID", doseForm: "Tablet"});
CREATE (dc20:DrugCase {primaryId: 10020, drugSeq: 1, name: "Zestril", routeOfAdministration: "Oral", doseAmount: "5", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc21:DrugCase {primaryId: 10021, drugSeq: 1, name: "Prednisone", routeOfAdministration: "Oral", doseAmount: "10", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc22:DrugCase {primaryId: 10022, drugSeq: 1, name: "Coumadin", routeOfAdministration: "Oral", doseAmount: "5", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc23:DrugCase {primaryId: 10023, drugSeq: 1, name: "Lantus", routeOfAdministration: "Subcutaneous", doseAmount: "30", doseUnit: "IU", doseFrequency: "QD", doseForm: "Injection"});
CREATE (dc24:DrugCase {primaryId: 10024, drugSeq: 1, name: "Amoxicillin", routeOfAdministration: "Oral", doseAmount: "250", doseUnit: "mg", doseFrequency: "TID", doseForm: "Suspension"});
CREATE (dc25:DrugCase {primaryId: 10025, drugSeq: 1, name: "Ibuprofen", routeOfAdministration: "Oral", doseAmount: "200", doseUnit: "mg", doseFrequency: "TID", doseForm: "Suspension"});
CREATE (dc26:DrugCase {primaryId: 10026, drugSeq: 1, name: "Zoloft", routeOfAdministration: "Oral", doseAmount: "25", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc27:DrugCase {primaryId: 10027, drugSeq: 1, name: "Lopressor", routeOfAdministration: "Oral", doseAmount: "25", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc28:DrugCase {primaryId: 10028, drugSeq: 1, name: "Amoxicillin", routeOfAdministration: "Oral", doseAmount: "125", doseUnit: "mg", doseFrequency: "TID", doseForm: "Suspension"});
CREATE (dc29:DrugCase {primaryId: 10029, drugSeq: 1, name: "Ibuprofen", routeOfAdministration: "Oral", doseAmount: "100", doseUnit: "mg", doseFrequency: "TID", doseForm: "Suspension"});
CREATE (dc30:DrugCase {primaryId: 10030, drugSeq: 1, name: "Humira", routeOfAdministration: "Subcutaneous", doseAmount: "40", doseUnit: "mg", doseFrequency: "Q2W", doseForm: "Injection"});
CREATE (dc31:DrugCase {primaryId: 10001, drugSeq: 2, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "81", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc32:DrugCase {primaryId: 10005, drugSeq: 2, name: "Zestril", routeOfAdministration: "Oral", doseAmount: "10", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc33:DrugCase {primaryId: 10006, drugSeq: 2, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "81", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc34:DrugCase {primaryId: 10011, drugSeq: 2, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "81", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc35:DrugCase {primaryId: 10013, drugSeq: 2, name: "Glucophage", routeOfAdministration: "Oral", doseAmount: "500", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc36:DrugCase {primaryId: 10015, drugSeq: 2, name: "Plavix", routeOfAdministration: "Oral", doseAmount: "75", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc37:DrugCase {primaryId: 10018, drugSeq: 2, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "81", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc38:DrugCase {primaryId: 10022, drugSeq: 2, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "81", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc39:DrugCase {primaryId: 10023, drugSeq: 2, name: "Glucophage", routeOfAdministration: "Oral", doseAmount: "500", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc40:DrugCase {primaryId: 10030, drugSeq: 2, name: "Prednisone", routeOfAdministration: "Oral", doseAmount: "10", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc41:DrugCase {primaryId: 10001, drugSeq: 3, name: "Prilosec", routeOfAdministration: "Oral", doseAmount: "20", doseUnit: "mg", doseFrequency: "QD", doseForm: "Capsule"});
CREATE (dc42:DrugCase {primaryId: 10004, drugSeq: 2, name: "Prilosec", routeOfAdministration: "Oral", doseAmount: "20", doseUnit: "mg", doseFrequency: "QD", doseForm: "Capsule"});
CREATE (dc43:DrugCase {primaryId: 10006, drugSeq: 3, name: "Lopressor", routeOfAdministration: "Oral", doseAmount: "50", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc44:DrugCase {primaryId: 10009, drugSeq: 2, name: "Synthroid", routeOfAdministration: "Oral", doseAmount: "50", doseUnit: "mcg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc45:DrugCase {primaryId: 10011, drugSeq: 3, name: "Lopressor", routeOfAdministration: "Oral", doseAmount: "50", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc46:DrugCase {primaryId: 10012, drugSeq: 2, name: "Prilosec", routeOfAdministration: "Oral", doseAmount: "20", doseUnit: "mg", doseFrequency: "QD", doseForm: "Capsule"});
CREATE (dc47:DrugCase {primaryId: 10015, drugSeq: 3, name: "Lopressor", routeOfAdministration: "Oral", doseAmount: "50", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc48:DrugCase {primaryId: 10019, drugSeq: 2, name: "Lipitor", routeOfAdministration: "Oral", doseAmount: "20", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc49:DrugCase {primaryId: 10020, drugSeq: 2, name: "Glucophage", routeOfAdministration: "Oral", doseAmount: "500", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc50:DrugCase {primaryId: 10021, drugSeq: 2, name: "Synthroid", routeOfAdministration: "Oral", doseAmount: "75", doseUnit: "mcg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc51:DrugCase {primaryId: 10002, drugSeq: 2, name: "Prilosec", routeOfAdministration: "Oral", doseAmount: "20", doseUnit: "mg", doseFrequency: "QD", doseForm: "Capsule"});
CREATE (dc52:DrugCase {primaryId: 10008, drugSeq: 2, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "81", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc53:DrugCase {primaryId: 10010, drugSeq: 2, name: "Glucophage", routeOfAdministration: "Oral", doseAmount: "500", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc54:DrugCase {primaryId: 10016, drugSeq: 2, name: "Prednisone", routeOfAdministration: "Oral", doseAmount: "20", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc55:DrugCase {primaryId: 10017, drugSeq: 2, name: "Zestril", routeOfAdministration: "Oral", doseAmount: "10", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc56:DrugCase {primaryId: 10003, drugSeq: 2, name: "Humira", routeOfAdministration: "Subcutaneous", doseAmount: "40", doseUnit: "mg", doseFrequency: "Q2W", doseForm: "Injection"});
CREATE (dc57:DrugCase {primaryId: 10007, drugSeq: 2, name: "Prednisone", routeOfAdministration: "Oral", doseAmount: "10", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc58:DrugCase {primaryId: 10014, drugSeq: 2, name: "Prilosec", routeOfAdministration: "Oral", doseAmount: "20", doseUnit: "mg", doseFrequency: "QD", doseForm: "Capsule"});
CREATE (dc59:DrugCase {primaryId: 10024, drugSeq: 2, name: "Ibuprofen", routeOfAdministration: "Oral", doseAmount: "200", doseUnit: "mg", doseFrequency: "PRN", doseForm: "Suspension"});
CREATE (dc60:DrugCase {primaryId: 10025, drugSeq: 2, name: "Amoxicillin", routeOfAdministration: "Oral", doseAmount: "125", doseUnit: "mg", doseFrequency: "TID", doseForm: "Suspension"});
CREATE (dc61:DrugCase {primaryId: 10026, drugSeq: 2, name: "Ibuprofen", routeOfAdministration: "Oral", doseAmount: "400", doseUnit: "mg", doseFrequency: "PRN", doseForm: "Tablet"});
CREATE (dc62:DrugCase {primaryId: 10027, drugSeq: 2, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "81", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc63:DrugCase {primaryId: 10028, drugSeq: 2, name: "Ibuprofen", routeOfAdministration: "Oral", doseAmount: "100", doseUnit: "mg", doseFrequency: "PRN", doseForm: "Suspension"});
CREATE (dc64:DrugCase {primaryId: 10029, drugSeq: 2, name: "Amoxicillin", routeOfAdministration: "Oral", doseAmount: "125", doseUnit: "mg", doseFrequency: "TID", doseForm: "Suspension"});
CREATE (dc65:DrugCase {primaryId: 10030, drugSeq: 3, name: "Glucophage", routeOfAdministration: "Oral", doseAmount: "500", doseUnit: "mg", doseFrequency: "BID", doseForm: "Tablet"});
CREATE (dc66:DrugCase {primaryId: 10013, drugSeq: 3, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "81", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc67:DrugCase {primaryId: 10019, drugSeq: 3, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "81", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
CREATE (dc68:DrugCase {primaryId: 10022, drugSeq: 3, name: "Prilosec", routeOfAdministration: "Oral", doseAmount: "20", doseUnit: "mg", doseFrequency: "QD", doseForm: "Capsule"});
CREATE (dc69:DrugCase {primaryId: 10003, drugSeq: 3, name: "Ibuprofen", routeOfAdministration: "Oral", doseAmount: "400", doseUnit: "mg", doseFrequency: "PRN", doseForm: "Tablet"});
CREATE (dc70:DrugCase {primaryId: 10007, drugSeq: 3, name: "Aspirin", routeOfAdministration: "Oral", doseAmount: "81", doseUnit: "mg", doseFrequency: "QD", doseForm: "Tablet"});
// ==============================================
// Relationships
// ==============================================
// CONCERNS_DRUG: Each DrugCase links to its Drug
MATCH (dc:DrugCase {primaryId: 10001, drugSeq: 1}), (d:Drug {name: "Ibuprofen"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10002, drugSeq: 1}), (d:Drug {name: "Amoxicillin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10003, drugSeq: 1}), (d:Drug {name: "Zoloft"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10004, drugSeq: 1}), (d:Drug {name: "Lipitor"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10005, drugSeq: 1}), (d:Drug {name: "Glucophage"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10006, drugSeq: 1}), (d:Drug {name: "Coumadin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10007, drugSeq: 1}), (d:Drug {name: "Humira"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10008, drugSeq: 1}), (d:Drug {name: "Zestril"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10009, drugSeq: 1}), (d:Drug {name: "Prednisone"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10010, drugSeq: 1}), (d:Drug {name: "Synthroid"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10011, drugSeq: 1}), (d:Drug {name: "Plavix"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10012, drugSeq: 1}), (d:Drug {name: "Lopressor"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10013, drugSeq: 1}), (d:Drug {name: "Lantus"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10014, drugSeq: 1}), (d:Drug {name: "Ibuprofen"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10015, drugSeq: 1}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10016, drugSeq: 1}), (d:Drug {name: "Amoxicillin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10017, drugSeq: 1}), (d:Drug {name: "Lipitor"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10018, drugSeq: 1}), (d:Drug {name: "Coumadin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10019, drugSeq: 1}), (d:Drug {name: "Glucophage"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10020, drugSeq: 1}), (d:Drug {name: "Zestril"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10021, drugSeq: 1}), (d:Drug {name: "Prednisone"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10022, drugSeq: 1}), (d:Drug {name: "Coumadin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10023, drugSeq: 1}), (d:Drug {name: "Lantus"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10024, drugSeq: 1}), (d:Drug {name: "Amoxicillin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10025, drugSeq: 1}), (d:Drug {name: "Ibuprofen"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10026, drugSeq: 1}), (d:Drug {name: "Zoloft"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10027, drugSeq: 1}), (d:Drug {name: "Lopressor"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10028, drugSeq: 1}), (d:Drug {name: "Amoxicillin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10029, drugSeq: 1}), (d:Drug {name: "Ibuprofen"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10030, drugSeq: 1}), (d:Drug {name: "Humira"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10001, drugSeq: 2}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10005, drugSeq: 2}), (d:Drug {name: "Zestril"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10006, drugSeq: 2}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10011, drugSeq: 2}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10013, drugSeq: 2}), (d:Drug {name: "Glucophage"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10015, drugSeq: 2}), (d:Drug {name: "Plavix"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10018, drugSeq: 2}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10022, drugSeq: 2}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10023, drugSeq: 2}), (d:Drug {name: "Glucophage"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10030, drugSeq: 2}), (d:Drug {name: "Prednisone"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10001, drugSeq: 3}), (d:Drug {name: "Prilosec"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10004, drugSeq: 2}), (d:Drug {name: "Prilosec"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10006, drugSeq: 3}), (d:Drug {name: "Lopressor"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10009, drugSeq: 2}), (d:Drug {name: "Synthroid"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10011, drugSeq: 3}), (d:Drug {name: "Lopressor"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10012, drugSeq: 2}), (d:Drug {name: "Prilosec"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10015, drugSeq: 3}), (d:Drug {name: "Lopressor"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10019, drugSeq: 2}), (d:Drug {name: "Lipitor"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10020, drugSeq: 2}), (d:Drug {name: "Glucophage"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10021, drugSeq: 2}), (d:Drug {name: "Synthroid"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10002, drugSeq: 2}), (d:Drug {name: "Prilosec"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10008, drugSeq: 2}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10010, drugSeq: 2}), (d:Drug {name: "Glucophage"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10016, drugSeq: 2}), (d:Drug {name: "Prednisone"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10017, drugSeq: 2}), (d:Drug {name: "Zestril"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10003, drugSeq: 2}), (d:Drug {name: "Humira"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10007, drugSeq: 2}), (d:Drug {name: "Prednisone"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10014, drugSeq: 2}), (d:Drug {name: "Prilosec"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10024, drugSeq: 2}), (d:Drug {name: "Ibuprofen"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10025, drugSeq: 2}), (d:Drug {name: "Amoxicillin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10026, drugSeq: 2}), (d:Drug {name: "Ibuprofen"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10027, drugSeq: 2}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10028, drugSeq: 2}), (d:Drug {name: "Ibuprofen"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10029, drugSeq: 2}), (d:Drug {name: "Amoxicillin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10030, drugSeq: 3}), (d:Drug {name: "Glucophage"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10013, drugSeq: 3}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10019, drugSeq: 3}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10022, drugSeq: 3}), (d:Drug {name: "Prilosec"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10003, drugSeq: 3}), (d:Drug {name: "Ibuprofen"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
MATCH (dc:DrugCase {primaryId: 10007, drugSeq: 3}), (d:Drug {name: "Aspirin"}) CREATE (dc)-[:CONCERNS_DRUG]->(d);
// PRIMARY_SUSPECT_DRUG: Cases 1-30 -> dc1-dc30
MATCH (c:Case {caseId: 10001}), (dc:DrugCase {primaryId: 10001, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10002}), (dc:DrugCase {primaryId: 10002, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10003}), (dc:DrugCase {primaryId: 10003, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10004}), (dc:DrugCase {primaryId: 10004, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10005}), (dc:DrugCase {primaryId: 10005, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10006}), (dc:DrugCase {primaryId: 10006, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10007}), (dc:DrugCase {primaryId: 10007, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10008}), (dc:DrugCase {primaryId: 10008, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10009}), (dc:DrugCase {primaryId: 10009, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10010}), (dc:DrugCase {primaryId: 10010, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10011}), (dc:DrugCase {primaryId: 10011, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10012}), (dc:DrugCase {primaryId: 10012, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10013}), (dc:DrugCase {primaryId: 10013, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10014}), (dc:DrugCase {primaryId: 10014, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10015}), (dc:DrugCase {primaryId: 10015, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10016}), (dc:DrugCase {primaryId: 10016, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10017}), (dc:DrugCase {primaryId: 10017, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10018}), (dc:DrugCase {primaryId: 10018, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10019}), (dc:DrugCase {primaryId: 10019, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10020}), (dc:DrugCase {primaryId: 10020, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10021}), (dc:DrugCase {primaryId: 10021, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10022}), (dc:DrugCase {primaryId: 10022, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10023}), (dc:DrugCase {primaryId: 10023, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10024}), (dc:DrugCase {primaryId: 10024, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10025}), (dc:DrugCase {primaryId: 10025, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10026}), (dc:DrugCase {primaryId: 10026, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10027}), (dc:DrugCase {primaryId: 10027, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10028}), (dc:DrugCase {primaryId: 10028, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10029}), (dc:DrugCase {primaryId: 10029, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10030}), (dc:DrugCase {primaryId: 10030, drugSeq: 1}) CREATE (c)-[:PRIMARY_SUSPECT_DRUG]->(dc);
// SECONDARY_SUSPECT_DRUG
MATCH (c:Case {caseId: 10001}), (dc:DrugCase {primaryId: 10001, drugSeq: 2}) CREATE (c)-[:SECONDARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10005}), (dc:DrugCase {primaryId: 10005, drugSeq: 2}) CREATE (c)-[:SECONDARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10006}), (dc:DrugCase {primaryId: 10006, drugSeq: 2}) CREATE (c)-[:SECONDARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10011}), (dc:DrugCase {primaryId: 10011, drugSeq: 2}) CREATE (c)-[:SECONDARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10013}), (dc:DrugCase {primaryId: 10013, drugSeq: 2}) CREATE (c)-[:SECONDARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10015}), (dc:DrugCase {primaryId: 10015, drugSeq: 2}) CREATE (c)-[:SECONDARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10018}), (dc:DrugCase {primaryId: 10018, drugSeq: 2}) CREATE (c)-[:SECONDARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10022}), (dc:DrugCase {primaryId: 10022, drugSeq: 2}) CREATE (c)-[:SECONDARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10023}), (dc:DrugCase {primaryId: 10023, drugSeq: 2}) CREATE (c)-[:SECONDARY_SUSPECT_DRUG]->(dc);
MATCH (c:Case {caseId: 10030}), (dc:DrugCase {primaryId: 10030, drugSeq: 2}) CREATE (c)-[:SECONDARY_SUSPECT_DRUG]->(dc);
// CONCOMITANT_DRUG
MATCH (c:Case {caseId: 10001}), (dc:DrugCase {primaryId: 10001, drugSeq: 3}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10004}), (dc:DrugCase {primaryId: 10004, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10006}), (dc:DrugCase {primaryId: 10006, drugSeq: 3}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10009}), (dc:DrugCase {primaryId: 10009, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10011}), (dc:DrugCase {primaryId: 10011, drugSeq: 3}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10012}), (dc:DrugCase {primaryId: 10012, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10015}), (dc:DrugCase {primaryId: 10015, drugSeq: 3}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10019}), (dc:DrugCase {primaryId: 10019, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10020}), (dc:DrugCase {primaryId: 10020, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10021}), (dc:DrugCase {primaryId: 10021, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10002}), (dc:DrugCase {primaryId: 10002, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10008}), (dc:DrugCase {primaryId: 10008, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10010}), (dc:DrugCase {primaryId: 10010, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10016}), (dc:DrugCase {primaryId: 10016, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10017}), (dc:DrugCase {primaryId: 10017, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10024}), (dc:DrugCase {primaryId: 10024, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10025}), (dc:DrugCase {primaryId: 10025, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10026}), (dc:DrugCase {primaryId: 10026, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10027}), (dc:DrugCase {primaryId: 10027, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10028}), (dc:DrugCase {primaryId: 10028, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10029}), (dc:DrugCase {primaryId: 10029, drugSeq: 2}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10030}), (dc:DrugCase {primaryId: 10030, drugSeq: 3}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10013}), (dc:DrugCase {primaryId: 10013, drugSeq: 3}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10019}), (dc:DrugCase {primaryId: 10019, drugSeq: 3}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10022}), (dc:DrugCase {primaryId: 10022, drugSeq: 3}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10003}), (dc:DrugCase {primaryId: 10003, drugSeq: 3}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
MATCH (c:Case {caseId: 10007}), (dc:DrugCase {primaryId: 10007, drugSeq: 3}) CREATE (c)-[:CONCOMITANT_DRUG]->(dc);
// DRUG_NOT_ADMINISTERED
MATCH (c:Case {caseId: 10003}), (dc:DrugCase {primaryId: 10003, drugSeq: 2}) CREATE (c)-[:DRUG_NOT_ADMINISTERED]->(dc);
MATCH (c:Case {caseId: 10007}), (dc:DrugCase {primaryId: 10007, drugSeq: 2}) CREATE (c)-[:DRUG_NOT_ADMINISTERED]->(dc);
MATCH (c:Case {caseId: 10014}), (dc:DrugCase {primaryId: 10014, drugSeq: 2}) CREATE (c)-[:DRUG_NOT_ADMINISTERED]->(dc);
// HAS_OUTCOME
MATCH (c:Case {caseId: 10001}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10002}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10003}), (o:Outcome {code: "DS"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10004}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10005}), (o:Outcome {code: "OT"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10006}), (o:Outcome {code: "LT"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10007}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10008}), (o:Outcome {code: "OT"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10009}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10010}), (o:Outcome {code: "DS"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10011}), (o:Outcome {code: "LT"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10012}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10013}), (o:Outcome {code: "DE"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10014}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10015}), (o:Outcome {code: "LT"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10016}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10017}), (o:Outcome {code: "OT"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10018}), (o:Outcome {code: "LT"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10019}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10020}), (o:Outcome {code: "DE"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10021}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10022}), (o:Outcome {code: "LT"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10023}), (o:Outcome {code: "DE"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10024}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10025}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10026}), (o:Outcome {code: "DS"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10027}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10028}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10029}), (o:Outcome {code: "HO"}) CREATE (c)-[:HAS_OUTCOME]->(o);
MATCH (c:Case {caseId: 10030}), (o:Outcome {code: "OT"}) CREATE (c)-[:HAS_OUTCOME]->(o);
// HAS_REACTION (1-2 reactions per case)
MATCH (c:Case {caseId: 10001}), (m:MedDraTerm {name: "Nausea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10001}), (m:MedDraTerm {name: "Abdominal pain"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10002}), (m:MedDraTerm {name: "Rash"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10002}), (m:MedDraTerm {name: "Anaphylaxis"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10003}), (m:MedDraTerm {name: "Headache"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10003}), (m:MedDraTerm {name: "Dizziness"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10004}), (m:MedDraTerm {name: "Myalgia"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10004}), (m:MedDraTerm {name: "Fatigue"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10005}), (m:MedDraTerm {name: "Nausea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10005}), (m:MedDraTerm {name: "Diarrhoea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10006}), (m:MedDraTerm {name: "Thrombocytopenia"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10007}), (m:MedDraTerm {name: "Rash"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10007}), (m:MedDraTerm {name: "Stevens-Johnson syndrome"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10008}), (m:MedDraTerm {name: "Headache"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10009}), (m:MedDraTerm {name: "Fatigue"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10009}), (m:MedDraTerm {name: "Myalgia"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10010}), (m:MedDraTerm {name: "Dizziness"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10011}), (m:MedDraTerm {name: "Chest pain"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10011}), (m:MedDraTerm {name: "Dyspnoea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10012}), (m:MedDraTerm {name: "Nausea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10012}), (m:MedDraTerm {name: "Vomiting"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10013}), (m:MedDraTerm {name: "Acute renal failure"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10013}), (m:MedDraTerm {name: "Hepatotoxicity"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10014}), (m:MedDraTerm {name: "Abdominal pain"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10014}), (m:MedDraTerm {name: "Nausea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10015}), (m:MedDraTerm {name: "Chest pain"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10015}), (m:MedDraTerm {name: "Bradycardia"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10016}), (m:MedDraTerm {name: "Rash"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10017}), (m:MedDraTerm {name: "Myalgia"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10017}), (m:MedDraTerm {name: "Fatigue"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10018}), (m:MedDraTerm {name: "Drug interaction"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10018}), (m:MedDraTerm {name: "Thrombocytopenia"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10019}), (m:MedDraTerm {name: "Nausea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10019}), (m:MedDraTerm {name: "Hypoglycaemia"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10020}), (m:MedDraTerm {name: "Acute renal failure"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10021}), (m:MedDraTerm {name: "Fatigue"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10021}), (m:MedDraTerm {name: "Dyspnoea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10022}), (m:MedDraTerm {name: "Bradycardia"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10022}), (m:MedDraTerm {name: "Chest pain"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10023}), (m:MedDraTerm {name: "Hypoglycaemia"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10023}), (m:MedDraTerm {name: "Dizziness"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10024}), (m:MedDraTerm {name: "Rash"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10024}), (m:MedDraTerm {name: "Vomiting"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10025}), (m:MedDraTerm {name: "Nausea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10025}), (m:MedDraTerm {name: "Abdominal pain"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10026}), (m:MedDraTerm {name: "Headache"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10026}), (m:MedDraTerm {name: "Dizziness"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10027}), (m:MedDraTerm {name: "Myalgia"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10028}), (m:MedDraTerm {name: "Rash"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10028}), (m:MedDraTerm {name: "Vomiting"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10029}), (m:MedDraTerm {name: "Nausea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10029}), (m:MedDraTerm {name: "Diarrhoea"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10030}), (m:MedDraTerm {name: "Fatigue"}) CREATE (c)-[:HAS_REACTION]->(m);
MATCH (c:Case {caseId: 10030}), (m:MedDraTerm {name: "Headache"}) CREATE (c)-[:HAS_REACTION]->(m);
// INDICATION_FOR_USE (DrugCase -> MedDraTerm)
MATCH (dc:DrugCase {primaryId: 10001, drugSeq: 1}), (m:MedDraTerm {name: "Abdominal pain"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10002, drugSeq: 1}), (m:MedDraTerm {name: "Rash"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10003, drugSeq: 1}), (m:MedDraTerm {name: "Headache"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10004, drugSeq: 1}), (m:MedDraTerm {name: "Myalgia"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10005, drugSeq: 1}), (m:MedDraTerm {name: "Fatigue"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10006, drugSeq: 1}), (m:MedDraTerm {name: "Thrombocytopenia"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10007, drugSeq: 1}), (m:MedDraTerm {name: "Fatigue"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10008, drugSeq: 1}), (m:MedDraTerm {name: "Hypertension"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10009, drugSeq: 1}), (m:MedDraTerm {name: "Fatigue"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10010, drugSeq: 1}), (m:MedDraTerm {name: "Fatigue"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10011, drugSeq: 1}), (m:MedDraTerm {name: "Chest pain"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10012, drugSeq: 1}), (m:MedDraTerm {name: "Bradycardia"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10013, drugSeq: 1}), (m:MedDraTerm {name: "Fatigue"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10014, drugSeq: 1}), (m:MedDraTerm {name: "Abdominal pain"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10015, drugSeq: 1}), (m:MedDraTerm {name: "Chest pain"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10016, drugSeq: 1}), (m:MedDraTerm {name: "Rash"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10017, drugSeq: 1}), (m:MedDraTerm {name: "Myalgia"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10018, drugSeq: 1}), (m:MedDraTerm {name: "Thrombocytopenia"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10019, drugSeq: 1}), (m:MedDraTerm {name: "Fatigue"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10020, drugSeq: 1}), (m:MedDraTerm {name: "Hypertension"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10021, drugSeq: 1}), (m:MedDraTerm {name: "Fatigue"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10022, drugSeq: 1}), (m:MedDraTerm {name: "Thrombocytopenia"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10023, drugSeq: 1}), (m:MedDraTerm {name: "Hypoglycaemia"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10024, drugSeq: 1}), (m:MedDraTerm {name: "Rash"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10025, drugSeq: 1}), (m:MedDraTerm {name: "Abdominal pain"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10026, drugSeq: 1}), (m:MedDraTerm {name: "Headache"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10027, drugSeq: 1}), (m:MedDraTerm {name: "Bradycardia"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10028, drugSeq: 1}), (m:MedDraTerm {name: "Rash"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10029, drugSeq: 1}), (m:MedDraTerm {name: "Nausea"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
MATCH (dc:DrugCase {primaryId: 10030, drugSeq: 1}), (m:MedDraTerm {name: "Fatigue"}) CREATE (dc)-[:INDICATION_FOR_USE]->(m);
// REPORTED_BY (Case -> Manufacturer)
MATCH (c:Case {caseId: 10001}), (m:Manufacturer {name: "Pfizer Inc."}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-01-15", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10001"}]->(m);
MATCH (c:Case {caseId: 10002}), (m:Manufacturer {name: "AstraZeneca"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-02-03", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10002"}]->(m);
MATCH (c:Case {caseId: 10003}), (m:Manufacturer {name: "Johnson & Johnson"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-02-18", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10003"}]->(m);
MATCH (c:Case {caseId: 10004}), (m:Manufacturer {name: "Novartis AG"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-03-05", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10004"}]->(m);
MATCH (c:Case {caseId: 10005}), (m:Manufacturer {name: "Roche Holding AG"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-03-22", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10005"}]->(m);
MATCH (c:Case {caseId: 10006}), (m:Manufacturer {name: "GlaxoSmithKline plc"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-04-10", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10006"}]->(m);
MATCH (c:Case {caseId: 10007}), (m:Manufacturer {name: "Merck & Co."}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-04-28", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10007"}]->(m);
MATCH (c:Case {caseId: 10008}), (m:Manufacturer {name: "Abbott Laboratories"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-05-14", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10008"}]->(m);
MATCH (c:Case {caseId: 10009}), (m:Manufacturer {name: "Bristol-Myers Squibb"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-06-01", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10009"}]->(m);
MATCH (c:Case {caseId: 10010}), (m:Manufacturer {name: "Sanofi S.A."}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-06-17", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10010"}]->(m);
MATCH (c:Case {caseId: 10011}), (m:Manufacturer {name: "Pfizer Inc."}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-01-22", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10011"}]->(m);
MATCH (c:Case {caseId: 10012}), (m:Manufacturer {name: "AstraZeneca"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-02-10", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10012"}]->(m);
MATCH (c:Case {caseId: 10013}), (m:Manufacturer {name: "Johnson & Johnson"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-03-01", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10013"}]->(m);
MATCH (c:Case {caseId: 10014}), (m:Manufacturer {name: "Novartis AG"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-04-05", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10014"}]->(m);
MATCH (c:Case {caseId: 10015}), (m:Manufacturer {name: "Roche Holding AG"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-05-20", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10015"}]->(m);
MATCH (c:Case {caseId: 10016}), (m:Manufacturer {name: "Merck & Co."}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-07-03", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10016"}]->(m);
MATCH (c:Case {caseId: 10017}), (m:Manufacturer {name: "GlaxoSmithKline plc"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-07-19", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10017"}]->(m);
MATCH (c:Case {caseId: 10018}), (m:Manufacturer {name: "Abbott Laboratories"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-08-05", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10018"}]->(m);
MATCH (c:Case {caseId: 10019}), (m:Manufacturer {name: "Bristol-Myers Squibb"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-01-30", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10019"}]->(m);
MATCH (c:Case {caseId: 10020}), (m:Manufacturer {name: "Sanofi S.A."}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-03-15", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10020"}]->(m);
MATCH (c:Case {caseId: 10021}), (m:Manufacturer {name: "Pfizer Inc."}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-05-09", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10021"}]->(m);
MATCH (c:Case {caseId: 10022}), (m:Manufacturer {name: "AstraZeneca"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-04-22", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10022"}]->(m);
MATCH (c:Case {caseId: 10023}), (m:Manufacturer {name: "Novartis AG"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-06-28", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10023"}]->(m);
MATCH (c:Case {caseId: 10024}), (m:Manufacturer {name: "Johnson & Johnson"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-02-25", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10024"}]->(m);
MATCH (c:Case {caseId: 10025}), (m:Manufacturer {name: "Roche Holding AG"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-03-10", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10025"}]->(m);
MATCH (c:Case {caseId: 10026}), (m:Manufacturer {name: "Merck & Co."}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-05-02", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10026"}]->(m);
MATCH (c:Case {caseId: 10027}), (m:Manufacturer {name: "GlaxoSmithKline plc"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-06-14", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10027"}]->(m);
MATCH (c:Case {caseId: 10028}), (m:Manufacturer {name: "Abbott Laboratories"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-07-08", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10028"}]->(m);
MATCH (c:Case {caseId: 10029}), (m:Manufacturer {name: "Bristol-Myers Squibb"}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-08-12", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10029"}]->(m);
MATCH (c:Case {caseId: 10030}), (m:Manufacturer {name: "Sanofi S.A."}) CREATE (c)-[:REPORTED_BY {manufacturerDate: "2024-09-01", notificationSendToManufacturer: true, manufacturerUniqueReportIdentifier: "MFR-10030"}]->(m);
// INTERACTING_DRUG (Drug -> Drug) - known interactions
MATCH (a:Drug {name: "Coumadin"}), (b:Drug {name: "Aspirin"}) CREATE (a)-[:INTERACTING_DRUG]->(b);
MATCH (a:Drug {name: "Coumadin"}), (b:Drug {name: "Ibuprofen"}) CREATE (a)-[:INTERACTING_DRUG]->(b);
MATCH (a:Drug {name: "Coumadin"}), (b:Drug {name: "Plavix"}) CREATE (a)-[:INTERACTING_DRUG]->(b);
MATCH (a:Drug {name: "Plavix"}), (b:Drug {name: "Aspirin"}) CREATE (a)-[:INTERACTING_DRUG]->(b);
MATCH (a:Drug {name: "Lopressor"}), (b:Drug {name: "Glucophage"}) CREATE (a)-[:INTERACTING_DRUG]->(b);
MATCH (a:Drug {name: "Zestril"}), (b:Drug {name: "Glucophage"}) CREATE (a)-[:INTERACTING_DRUG]->(b);
MATCH (a:Drug {name: "Humira"}), (b:Drug {name: "Prednisone"}) CREATE (a)-[:INTERACTING_DRUG]->(b);
MATCH (a:Drug {name: "Lantus"}), (b:Drug {name: "Glucophage"}) CREATE (a)-[:INTERACTING_DRUG]->(b);
Cypher 语句
本节提供了一组示例 Cypher 查询,可用于从不同角度探索患者旅程图。
以药物为中心
从 Drug 的角度出发,不良事件是什么?
哪些 Drug 被消费者报告得最多?
此查询获取消费者报告的所有药物及其报告次数。这有助于查看不良反应数量最多的药物有哪些。
// Get all the drugs reported by a consumer (excluding the drugs that weren't administered) and return the names,
// active ingredients and the number of times they were reported.
MATCH (:Case {reporterOccupation:'Consumer'})-[:!DRUG_NOT_ADMINISTERED]->(:DrugCase)-[:CONCERNS_DRUG]->(d:Drug)
RETURN d.name AS Name, d.activeIngredient AS `Active Ingredient`, count(d) AS `Num times Reported`
ORDER BY `Num times Reported` DESC;
哪些 Drug 的副作用(MedDraTerm)最多?
此查询从数据库中的 Drug 开始,拉取通过 Case 节点与之相连的所有反应(MedDraTerm)。然后,它将这些反应汇总在一起,并返回药物名称、活性成分和反应。
MATCH (d:Drug)<--(:DrugCase)<-[:PRIMARY_SUSPECT_DRUG]-(:Case)-[:HAS_REACTION]->(m:MedDraTerm)
WITH d.name AS drugName, d.activeIngredient AS activeIngredient, COLLECT(DISTINCT m.name) AS Reactions
RETURN drugName, activeIngredient, size(Reactions) AS numReactions, Reactions
ORDER BY numReactions DESC
将其扩展以找出不仅是主要嫌疑药物,也是次要嫌疑药物的药物。
MATCH
(d:Drug)<--(:DrugCase)<-[:PRIMARY_SUSPECT_DRUG|SECONDARY_SUSPECT_DRUG]-(:Case)-[:HAS_REACTION]->(m:MedDraTerm)
WITH d.name AS drugName, d.activeIngredient AS activeIngredient, COLLECT(DISTINCT m.name) AS Reactions
RETURN drugName, activeIngredient, size(Reactions) AS numReactions, Reactions
ORDER BY numReactions DESC
当然,您可以同时获取主要和次要的影响。
OPTIONAL MATCH (d:Drug)<--(:DrugCase)<-[:PRIMARY_SUSPECT_DRUG]-(:Case)-[:HAS_REACTION]->(m:MedDraTerm)
WITH
d,
COLLECT(DISTINCT m.name) AS primaryReactions,
d.name AS drugName,
d.activeIngredient AS activeIngredient
OPTIONAL MATCH (d)<--(:DrugCase)<-[:SECONDARY_SUSPECT_DRUG]-(:Case)-[:HAS_REACTION]->(m:MedDraTerm)
WITH
d, primaryReactions,
COLLECT(DISTINCT m.name) AS secondaryReactions,
drugName,
activeIngredient
RETURN
drugName,
activeIngredient,
size(primaryReactions) + size(secondaryReactions) AS numReactions,
primaryReactions,
secondaryReactions
ORDER BY numReactions DESC
特定药物有多少起不良事件?
我们选取一种给定的药物('Aspirin'),并查找与之相关的主要和次要反应。
WITH "Aspirin" AS searchTerm
OPTIONAL MATCH
(d:Drug {name:searchTerm})<--(:DrugCase)<-[:PRIMARY_SUSPECT_DRUG]-(:Case)-[:HAS_REACTION]->(m:MedDraTerm)
WITH
d,
COLLECT(DISTINCT m.name) AS primaryReactions,
d.name AS drugName,
d.activeIngredient AS activeIngredient
OPTIONAL MATCH
(d)<--(:DrugCase)<-[:SECONDARY_SUSPECT_DRUG]-(:Case)-[:HAS_REACTION]->(m:MedDraTerm)
WITH
d, primaryReactions,
COLLECT(DISTINCT m.name) AS secondaryReactions,
drugName,
activeIngredient
RETURN
drugName,
activeIngredient,
size(primaryReactions) AS numPrimaryReactions,
primaryReactions, size(secondaryReactions) AS numSecondaryReactions,
secondaryReactions
ORDER BY numReactions DESC
特定药物最常见的不良事件是什么?
以某种特定药物('Ibuprofen')为例,与之相关的最常见副作用是什么?
WITH "Ibuprofen" AS searchTerm
MATCH
(d:Drug {name:searchTerm})<--(:DrugCase)<-[:PRIMARY_SUSPECT_DRUG]-(:Case)-[:HAS_REACTION]->(m:MedDraTerm)
RETURN m.name AS reaction, count(m) AS numberOfTimes
ORDER BY numberOfTimes DESC
我们还可以查看所有药物的情况:
MATCH (d:Drug)<--(:DrugCase)<-[:PRIMARY_SUSPECT_DRUG]-(:Case)-[:HAS_REACTION]->(m:MedDraTerm)
RETURN d.name, m.name AS reaction, count(m) AS numberOfTimes
ORDER BY numberOfTimes DESC
当联合用药时,哪十种 Drug 组合产生的反应(MedDraTerm)最多?
哪种 Drug 配对产生的反应最多?这可能表明这些药物之间存在潜在的相互作用,值得进一步调查。
MATCH
(ssd:DrugCase)<-[:CONCOMITANT_DRUG|SECONDARY_SUSPECT_DRUG]-(c:Case)-[:PRIMARY_SUSPECT_DRUG]->(psd:DrugCase),
(c)-[:HAS_REACTION]->(r:MedDraTerm)
RETURN ssd.name, psd.name, COLLECT(DISTINCT r.name) AS reactions, count(DISTINCT r.name) AS numberOfReactions
ORDER BY numberOfReactions DESC LIMIT 10
以不良事件为中心
从不良事件的角度进行查询:
哪个年龄组报告的副作用(MedDraTerm)最高,这些副作用是什么?
此查询将按年龄组给出不良反应的计数。这是反应的总数,例如,如果两名 Adult(成人)有相同的反应(如头痛),则会被计入两次。
UNWIND ['Adult', 'Elderly', 'Child', 'Adolescent', 'Neonate', 'Infant'] AS ageGroup
MATCH (c:Case)-[:HAS_REACTION]->(r:MedDraTerm)
WHERE ageGroup IN labels(c)
RETURN DISTINCT ageGroup, count(r)
ORDER BY count(r) desc
我们还可以按性别对这些组进行细分:
UNWIND ['Male', 'Female'] AS sex
UNWIND ['Adult', 'Elderly', 'Child', 'Adolescent', 'Neonate', 'Infant'] AS ageGroup
MATCH (c:Case)-[:HAS_REACTION]->(r:MedDraTerm)
WHERE ageGroup IN labels(c) AND sex IN labels(c)
RETURN DISTINCT sex, ageGroup, count(r)
ORDER BY count(r) desc
与不良事件相关的 Drug 有哪些?
如果我们观察到某起不良事件,我们可能想看看哪些药物与该事件有关。
WITH "Nausea" AS adverseEffect
MATCH
(d:Drug)<--(:DrugCase)<-[:PRIMARY_SUSPECT_DRUG]-(:Case)-[:HAS_REACTION]->(m:MedDraTerm {name: adverseEffect})
WITH m.name AS reaction, d.name AS drugName, count(d) AS numberOfTimes
RETURN reaction, drugName, numberOfTimes
ORDER BY numberOfTimes DESC
我们也可以全局查看哪些药物与这些反应相关。
MATCH (d:Drug)<--(:DrugCase)<-[:PRIMARY_SUSPECT_DRUG]-(:Case)-[:HAS_REACTION]->(m:MedDraTerm)
WITH m.name AS reaction, COLLECT(DISTINCT d.name) AS drugsAssociated
RETURN reaction, size(drugsAssociated) AS numberOfDrugs, drugsAssociated
ORDER BY numberOfDrugs DESC
以制造商为中心
从制造商的角度进行查询。
制造商报告的最常见反应是什么?
特定制造商通常报告哪些反应?
WITH "Sanofi S.A." AS manufacturer
MATCH (m:Manufacturer {name: manufacturer})<-[:REPORTED_BY]-(:Case)-[:HAS_REACTION]->(reaction:MedDraTerm)
RETURN reaction.name AS reaction, count(reaction) AS numberOfTimes
制造商报告的最常见 Drug 是什么?
特定制造商正在报告哪些药物?
WITH "Sanofi S.A." AS manufacturer
MATCH
(m:Manufacturer {name: manufacturer})<-[:REPORTED_BY]-(:Case)-[:PRIMARY_SUSPECT_DRUG]->(:DrugCase)-[:CONCERNS_DRUG]->(drug:Drug)
RETURN drug.name AS drug, drug.activeIngredient AS activeIngredient, count(drug) AS numberOfTimes