AnpherosAnpheros PlatformDevelopers

Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card

Sağlık Verileri Nasıl Normalleştirilir

Eğitim: birçok kaynaktan gelen sağlık verilerini tek, karşılaştırılabilir bir forma dönüştürme — LOINC arama, UCUM birimleri, ISO tarihleri, referans aralıkları, yeniden denemede yinelenen yok ve Avrupa laboratuvar profiline göre doğrulama.

Tıbbi verileri normalleştirmek, birçok farklı şekilde gelen değerleri tek bir karşılaştırılabilir forma dönüştürmek anlamına gelir: aynı test için aynı kod, aynı birim sistemi, tek bir formatta tarihler, her değer referans aralığı ve kaynağı ile birlikte ve yinelenen kayıtlar olmadan. Bu eğitim, veriler HL7 FHIR R4 kaydına ulaşmadan önce bunu nasıl yapacağınızı gösterir: LOINC ve ATC kodlarını arama, UCUM birimlerini kullanma, belirsiz tarihleri reddetme, aralıkları saklama, yeniden denemelerde yinelenenleri önleme ve sonucu Avrupa laboratuvar profiline karşı kontrol etme. Gösterilen her yanıt Anpheros API'sinden gelir.

Neden Önemlidir

Aynı HbA1c sonucu size "HbA1c 6,4 %", "Hemoglobina glicozilata: 6.4", "Glycated haemoglobin 46 mmol/mol" veya yalnızca bir laboratuvarın anlayabileceği bir laboratuvar kodu olarak ulaşabilir. Bunlar tek bir birimle tek bir kod olana kadar:

Normalleştirme, verinin kayda girdiği noktada, bir kez yapılmalıdır, sonradan okuyan her uygulamada değil.

Normalleştirilmiş Bir Değer Neleri İçerir

Kısım Normalleştirilmiş Form Örnek
Ölçülen Şey Standart bir sistemden bir kod LOINC 4548-4 (HbA1c), RxNorm 6809 (metformin), ICD-10 E11 (tip 2 diyabet)
Değer Sayısal olmayan bir sonuç olduğunda yalnızca sayı veya metin 6.4
Birim UCUM %, mg/dL, mm[Hg], kg
Ne Zaman Saat dilimiyle birlikte ISO 8601 tarih-saat, zaman önemli olduğunda saat dilimiyle 2026-10-01T07:30:00Z
Normal Aralık Düşük ve yüksek, aynı birimde 4.0–5.6
Kaynak Kimin ürettiği ve hangi sistemden import, labx'den
Kimlik Tekrarı tanınabilir kılan bir şey Bir idempotency anahtarı veya bir kaynak tanımlayıcısı

Hangi kod sisteminin hangi kaynak türüyle eşleştiği FHIR kod sistemleri bölümünde listelenmiştir.

Adım 1: Kodu Bulma

Platformun terminolojisini İngilizce veya Rumence adıyla ya da kısaltmasıyla arayın:

curl "https://platform.anpheros.com/v1/terminology/loinc?q=hba1c" -H "Authorization: Bearer $KEY"
curl "https://platform.anpheros.com/v1/terminology/loinc?q=hemoglobina%20glicozilata" -H "Authorization: Bearer $KEY"

Her ikisi de aynı kavramı döndürür:

{"data": [{"system": "http://loinc.org", "code": "4548-4", "display": "Hemoglobin A1c/Hemoglobin.total in Blood",
           "display_ro": "Hemoglobină glicozilată (HbA1c)", "category": "laboratory", "unit": "%"}], "total": 1}

İlaçlar için Anpheros Search, maddeyi ad veya marka ile bulur ve RxNorm bileşen kodunu ve EMA ürün numaralarını verir:

curl "https://platform.anpheros.com/v1/search?q=metformin&type=treatment" -H "Authorization: Bearer $KEY"

unit alanı, testin beklediği birim LOINC'dir. Aldığınızı kontrol etmek için kullanın. Her kaynaktan kendi adlarından kodlara eşlemeyi kaynak başına bir kez oluşturun ve entegrasyonunuzda saklayın. Yazma zamanında tahmin etmeyin: bir ad belirsiz olduğunda ve kaynaktan hiçbir şey bunu çözmediğinde, eşlenmemiş bırakın ve kaynaktan sorun. Laboratuvar sonuçlarını bir FHIR kaydına nasıl aktarılır eşlenmemiş laboratuvar işaretçilerinin nasıl saklandığını ve raporlandığını gösterir.

Adım 2: Kodlar, birimler ve aralıklarla yazma

curl -X POST "https://platform.anpheros.com/v1/patients/$PID/observations" -H "Authorization: Bearer $KEY" \
     -H "Content-Type: application/json" -H "Idempotency-Key: lab-77-hba1c" -d '{
  "code": "4548-4", "category": "laboratory",
  "value": 6.4, "unit": "%", "effective_at": "2026-10-01T07:30:00Z",
  "reference_range": {"low": 4.0, "high": 5.6},
  "author_type": "import"
}'
{"id": "3296315c-…", "code": "4548-4", "system": "http://loinc.org", "display": "Hemoglobin A1c/Hemoglobin.total in Blood",
 "category": "laboratory", "effective_at": "2026-10-01T07:30:00Z", "value": 6.4, "unit": "%",
 "reference_range": {"low": 4.0, "high": 5.6}, "status": "final", "fhir": "Observation/3296315c-…"}

Yalnızca kodu gönderdiğinizde, platform standart LOINC adını hem REST API'de hem de FHIR API'de (/fhir/R4) doldurur, böylece her uygulama aynı display'yi okur. Kendi gönderdiğiniz bir display olduğu gibi saklanır.

Orijinal ifadeyi de koruyun. Bir laboratuvar raporu için, FHIR Observation'daki code.text, laboratuvarın adını ("Hemoglobina glicozilata (HbA1c)") LOINC kodlamasının yanında tutar. Hasta hala kağıt raporunu tanır ve eşleme sorgulanırsa hiçbir şey kaybolmaz.

Adım 3: Birimler

UCUM kodlarını kullanın: mg/dL, mmol/L, %, mm[Hg], kg, cm, /min, Cel. Hataların çoğunu önleyen iki kural vardır:

Anpheros sizin için birimleri dönüştürmez; gönderdiğiniz birimi saklar.

Adım 4: Tarihler

Tarihleri yazmadan önce, kaynağın bilinen formatını kullanarak ISO 8601'e dönüştürün. 01.10.2026, Romanya ve birçok Avrupa ülkesinde 1 Ekim anlamına gelirken, 10/01/2026 yalnızca Amerika Birleşik Devletleri'nde 1 Ekim anlamına gelir. API, tahmin etmek yerine ISO olmayan herhangi bir şeyi reddeder:

{"error": {"type": "invalid", "message": "Input should be a valid datetime or date, invalid character in year (at effective_at)", "field": "effective_at"}}

Laboratuvar bağlayıcısı bir istisnadır: Avrupa'dan bir rapor okuduğunu bildiği için DD.MM.YYYY ve DD/MM/YYYY'ü kabul eder.

Günün saatinin önemli olduğu ölçümler (kan basıncı, glukoz, ilaç dozları) için saati saat dilimiyle birlikte gönderin. Bükreş'te 23:30'da alınan bir ölçüm, UTC'de önceki güne denk gelir ve hasta bunu aldığı gün olarak bekler.

Adım 5: Tekrarlanan Kayıtlar

Tekrarlanan kayıtlar, yeniden denemelerden, aynı raporun iki kez gönderilmesinden ve iki farklı yoldan gelen aynı değerden kaynaklanabilir.

Adım 6: Bir profile karşı kontrol etme

Laboratuvar sonuçları için, platforma HL7 Europe laboratuvar rapor profiline ne kadar uyduğunu sormadan önce ona güvenmeyin:

curl -X POST "https://platform.anpheros.com/fhir/R4/Observation/\$validate?profile=eu-lab" -H "Authorization: Bearer $KEY" \
     -H "Content-Type: application/fhir+json" -d '{
  "resourceType": "Observation", "status": "final",
  "category": [{"coding": [{"system": "http://terminology.hl7.org/CodeSystem/observation-category", "code": "laboratory"}]}],
  "code": {"text": "HbA1c"}, "subject": {"reference": "Patient/'$PID'"},
  "valueQuantity": {"value": 6.4, "unit": "%"}
}'

Bu normalleştirilmemiş sonuç, kesin bir liste alır:

{"resourceType": "OperationOutcome", "issue": [
  {"severity": "error", "code": "invalid", "diagnostics": "Observation.code must carry a LOINC coding.", "expression": ["Observation.code"]},
  {"severity": "error", "code": "required", "diagnostics": "Observation.effective[x] is required.", "expression": ["Observation.effective"]},
  {"severity": "warning", "code": "business-rule", "diagnostics": "valueQuantity should carry a UCUM system and code.", "expression": ["Observation.valueQuantity"]},
  {"severity": "warning", "code": "informational", "diagnostics": "No referenceRange: interpretation will need the laboratory's ranges.", "expression": ["Observation.referenceRange"]},
  {"severity": "information", "code": "informational", "diagnostics": "No performer (laboratory) recorded.", "expression": ["Observation.performer"]},
  {"severity": "information", "code": "informational", "diagnostics": "No issued time (when the laboratory released the result).", "expression": ["Observation.issued"]}]}

Her sorun yukarıdaki adımlardan birine karşılık gelir. Her kaynaktan gelen gerçek örneklerle entegrasyon testlerinizde $validate'yi çalıştırın.

Adım 7: Kaynağı Korumak

Normalleştirme, bir değerin nasıl yazıldığını değiştirir, nereden geldiğini asla değiştirmez. Her yazma işlemiyle birlikte author_type (device, import, practitioner, patient) ve X-Anpheros-Source-System gönderin. Bu, bir doktorun, denetçinin veya yapay zeka modelinin bir laboratuvar sonucunu evde girilen bir değerden ayırt etmesini sağlar. Tıbbi Veri Kökeni Açıklaması bölümüne bakın.

Kontrol Listesi

Sıkça Sorulan Sorular

Tıbbi veri normalizasyonu nedir?

Farklı kaynaklardan gelen sağlık verilerini tek bir standart forma dönüştürmektir: paylaşılan kodlar (testler ve ölçümler için LOINC, teşhisler için ICD-10, ilaçlar için ATC), UCUM birimleri, ISO tarihleri, referans aralıkları ve kaydedilmiş bir kaynak, böylece farklı sistemlerden gelen değerler karşılaştırılabilir, birleştirilebilir ve değiştirilebilir.

Tüm değerleri tek bir birime dönüştürmeli miyim?

Kaynak tarafından ölçülen birimi, geçerli bir UCUM birimi olduğu ve kodla eşleştiği sürece saklayın ve görüntüleme veya analiz sırasında dönüştürün. Bu, saklanan her değerin orijinal raporuna izlenebilirliğini korur.

Normalizasyon tamamen otomatik olabilir mi?

Çoğunlukla. Kaynaktaki kodlar, bilinen adlar ve iyi biçimlendirilmiş birimler otomatik olarak eşlenebilir. Belirsiz adlar ve bilinmeyen yerel kodlar, kaynak başına bir kez insan kararı gerektirir, sonrasında eşleme otomatik olur.

İlgili Konular

Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card

Product updates by email

New features, guides and the end of the beta. One email a month at most.

Send me occasional Anpheros Platform updates by email (new features, API changes, guides). I'll confirm by email and can unsubscribe in one click from any email. Privacy