Mapping Gene Symbols with Their Corresponding HGNC Codes

Description

This model maps current approved gene symbols to their corresponding HGNC identifier. Trained on the HGNC monthly release dated 2026-08-04.

Live Demo Open in Colab Copy S3 URI

How to use

document_assembler = DocumentAssembler()\
    .setInputCol("text")\
    .setOutputCol("document")

chunk_assembler = Doc2Chunk()\
    .setInputCols(["document"])\
    .setOutputCol("ner_chunk")

code_mapper = ChunkMapperModel.pretrained("hgnc_symbol_code_mapper_2026","en","clinical/models")\
    .setInputCols(["ner_chunk"])\
    .setOutputCol("mappings")\
    .setRels(["hgnc_id"])

pipeline = Pipeline(stages=[document_assembler, chunk_assembler, code_mapper])

data = spark.createDataFrame([[s] for s in ['TP53', 'BRCA1', 'EGFR', 'KRAS', 'APC', 'NRAS', 'PTEN', 'XDH']]).toDF("text")
result = pipeline.fit(data).transform(data)
document_assembler = nlp.DocumentAssembler()\
    .setInputCol("text")\
    .setOutputCol("document")

chunk_assembler = nlp.Doc2Chunk()\
    .setInputCols(["document"])\
    .setOutputCol("ner_chunk")

code_mapper = medical.ChunkMapperModel.pretrained("hgnc_symbol_code_mapper_2026","en","clinical/models")\
    .setInputCols(["ner_chunk"])\
    .setOutputCol("mappings")\
    .setRels(["hgnc_id"])

pipeline = nlp.Pipeline(stages=[document_assembler, chunk_assembler, code_mapper])

data = spark.createDataFrame([[s] for s in ['TP53', 'BRCA1', 'EGFR', 'KRAS', 'APC', 'NRAS', 'PTEN', 'XDH']]).toDF("text")
result = pipeline.fit(data).transform(data)

val documentAssembler = new DocumentAssembler()
    .setInputCol("text")
    .setOutputCol("document")

val chunkAssembler = new Doc2Chunk()
    .setInputCols("document")
    .setOutputCol("ner_chunk")

val codeMapper = ChunkMapperModel
    .pretrained("hgnc_symbol_code_mapper_2026", "en", "clinical/models")
    .setInputCols(Array("ner_chunk"))
    .setOutputCol("mappings")
    .setRels(Array("hgnc_id"))

val pipeline = new Pipeline().setStages(Array(documentAssembler, chunkAssembler, codeMapper))

val data = Seq("TP53", "BRCA1", "EGFR", "KRAS", "APC", "NRAS", "PTEN", "XDH").toDF("text")
val result = pipeline.fit(data).transform(data)

Results

| symbol   | HGNC Code   |
|:---------|:------------|
| TP53     | HGNC:11998  |
| BRCA1    | HGNC:1100   |
| EGFR     | HGNC:3236   |
| KRAS     | HGNC:6407   |
| APC      | HGNC:583    |
| NRAS     | HGNC:7989   |
| PTEN     | HGNC:9588   |
| XDH      | HGNC:12805  |

Model Information

Model Name: hgnc_symbol_code_mapper_2026
Compatibility: Healthcare NLP 6.4.1+
License: Licensed
Edition: Official
Input Labels: [ner_chunk]
Output Labels: [mappings]
Language: en
Size: 618.4 KB