| Literature DB >> 31035612 |
Argyro Mavrogiorgou1, Athanasios Kiourtis2, Konstantinos Perakis3, Stamatios Pitsios4, Dimosthenis Kyriazis5.
Abstract
It is an undeniable fact that Internet of Things (IoT) technologies have become a milestone advancement in the digital healthcare domain, since the number of IoT medical devices is grown exponentially, and it is now anticipated that by 2020 there will be over 161 million of them connected worldwide. Therefore, in an era of continuous growth, IoT healthcare faces various challenges, such as the collection, the quality estimation, as well as the interpretation and the harmonization of the data that derive from the existing huge amounts of heterogeneous IoT medical devices. Even though various approaches have been developed so far for solving each one of these challenges, none of these proposes a holistic approach for successfully achieving data interoperability between high-quality data that derive from heterogeneous devices. For that reason, in this manuscript a mechanism is produced for effectively addressing the intersection of these challenges. Through this mechanism, initially, the collection of the different devices' datasets occurs, followed by the cleaning of them. In sequel, the produced cleaning results are used in order to capture the levels of the overall data quality of each dataset, in combination with the measurements of the availability of each device that produced each dataset, and the reliability of it. Consequently, only the high-quality data is kept and translated into a common format, being able to be used for further utilization. The proposed mechanism is evaluated through a specific scenario, producing reliable results, achieving data interoperability of 100% accuracy, and data quality of more than 90% accuracy.Entities:
Keywords: data cleaning; data heterogeneity; data interoperability; data quality; healthcare; heterogeneous devices; internet of things; medical devices; quality assessment
Mesh:
Year: 2019 PMID: 31035612 PMCID: PMC6539021 DOI: 10.3390/s19091978
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Figure 1Architecture of the proposed mechanism.
Figure 2Data collection stage.
Figure 3Data cleaning stage.
Figure 4Data quality estimation stage.
Figure 5Data interoperability stage.
Devices’ specifications.
| # | Name | Manufacturer | Type | # | Name | Manufacturer | Type |
|---|---|---|---|---|---|---|---|
|
| iHealth Clear | iHealth | BPM |
| iHealth View | iHealth | BPM |
|
| Fitbit Aria 2 | Fitbit | BWS |
| Withings BPM | Withings | BPM |
|
| iHealth Lite | iHealth | BWS |
| Polar Balance | Polar | BWS |
|
| iHealth Air | iHealth | PO |
| iHealth Smart | iHealth | GL |
|
| Withings Body | Withings | BWS |
| Withings Body Cardio | Withings | BWS |
|
| iHealth Track | iHealth | BPM |
| iHealth Wave | iHealth | AT |
|
| Garmin Index Smart Scale | Garmin | BWS |
| Xiaomi Mi Body Composition Scale | Xiaomi | BWS |
|
| Withings Steel | Withings | AT |
| NONIN 3230 | NONIN | PO |
|
| Withings Body+ | Withings | BWS |
| Garmin Vivofit | Garmin | AT |
|
| iHealth Align | iHealth | GL |
| iHealth Core | iHealth | BWS |
Figure 6(a) Snapshot of Withings BPM data in JSON; (b) Snapshot of Withings BPM data in XML.
Elements’ constraints.
| Element Name | Data Type | Required | Constraints |
|---|---|---|---|
| Date | String | Yes | Format: YYYY-MM-DD |
| Time | String | Yes | Format: HH:MM:SS |
| Diastolic Blood Pressure Code | UUID | Yes | Unique Identifier |
| Diastolic Blood Pressure Value | Integer | No | Range Constraints |
| Diastolic Blood Pressure Unit | String | No | mmHg |
| Systolic Blood Pressure Code | UUID | Yes | Unique Identifier |
| Systolic Blood Pressure Value | Integer | No | Range Constraints |
| Systolic Blood Pressure Unit | String | No | mmHg |
| Heart Rate Code | UUID | Yes | Unique Identifier |
| Heart Rate Value | Integer | No | Range Constraints |
| Heart Rate Unit | String | No | mmHg |
Date-Time cleaning results.
| Device Name | Erroneous Data | Corrective Actions | Missing Data | Corrective Actions |
|---|---|---|---|---|
| iHealth Clear | 0 | None | 0 | None |
| iHealth Track | 0 | None | 1 | Dropped record |
| Withings BPM | 0 | None | 0 | None |
| iHealth View | 1 | Dropped record | 2 | Dropped record |
Diastolic Blood Pressure cleaning results.
| Device Name | Erroneous Data | Corrective Actions | Missing Data | Corrective Actions |
|---|---|---|---|---|
|
| ||||
| iHealth Clear | 0 | None | 0 | None |
| iHealth Track | 0 | None | 0 | None |
| Withings BPM | 0 | None | 0 | None |
| iHealth View | 0 | None | 0 | None |
|
| ||||
| iHealth Clear | 2 | kNN imputation | 3 | C4.5 imputation |
| iHealth Track | 1 | kNN imputation | 2 | C4.5 imputation |
| Withings BPM | 2 | kNN imputation | 4 | C4.5 imputation |
| iHealth View | 3 | kNN imputation | 3 | C4.5 imputation |
|
| ||||
| iHealth Clear | 0 | None | 0 | None |
| iHealth Track | 0 | None | 0 | None |
| Withings BPM | 0 | None | 0 | None |
| iHealth View | 0 | None | 0 | None |
Systolic Blood Pressure cleaning results.
| Device Name | Erroneous Data | Corrective Actions | Missing Data | Corrective Actions |
|---|---|---|---|---|
|
| ||||
| iHealth Clear | 0 | None | 0 | None |
| iHealth Track | 0 | None | 0 | None |
| Withings BPM | 0 | None | 0 | None |
| iHealth View | 0 | None | 1 | Dropped record |
|
| ||||
| iHealth Clear | 2 | kNN imputation | 2 | C4.5 imputation |
| iHealth Track | 2 | kNN imputation | 1 | C4.5 imputation |
| Withings BPM | 1 | kNN imputation | 4 | C4.5 imputation |
| iHealth View | 1 | kNN imputation | 3 | C4.5 imputation |
|
| ||||
| iHealth Clear | 1 | Filled with value | 1 | Filled with value |
| iHealth Track | 1 | Filled with value | 0 | None |
| Withings BPM | 1 | Filled with value | 2 | Filled with value |
| iHealth View | 0 | None | 0 | None |
Heart Rate cleaning results.
| Device Name | Erroneous Data | Corrective Actions | Missing Data | Corrective Actions |
|---|---|---|---|---|
|
| ||||
| iHealth Clear | 0 | None | 0 | None |
| iHealth Track | 1 | Dropped record | 0 | None |
| Withings BPM | 0 | None | 1 | Dropped record |
| iHealth View | 0 | None | 0 | None |
|
| ||||
| iHealth Clear | 3 | kNN imputation | 3 | C4.5 imputation |
| iHealth Track | 2 | kNN imputation | 2 | C4.5 imputation |
| Withings BPM | 1 | kNN imputation | 4 | C4.5 imputation |
| iHealth View | 3 | kNN imputation | 5 | C4.5 imputation |
|
| ||||
| iHealth Clear | 0 | None | 0 | None |
| iHealth Track | 0 | None | 0 | None |
| Withings BPM | 0 | None | 0 | None |
| iHealth View | 0 | None | 0 | None |
Overall cleaning results.
| Device Name | Initial Records | Final Records | Errors Encountered | Records Dropped | Errors Corrected | Data Accuracy (%) | Faulty Data (%) | Data Completion (%) |
|---|---|---|---|---|---|---|---|---|
| iHealth Clear | 238 | 238 | 17 | 0 | 17 | 92.86 | 7.14 | 100.00 |
| iHealth Track | 239 | 237 | 13 | 2 | 11 | 94.56 | 5.44 | 99.16 |
| Withings BPM | 244 | 243 | 20 | 1 | 19 | 91.80 | 8.20 | 99.59 |
| iHealth View | 243 | 239 | 22 | 4 | 18 | 90.95 | 9.05 | 98.35 |
Figure 7Snapshot of Withings BPM cleaned data in XML.
Overall quality results.
| Device Name | Cleaned Records | Availability (%) | Faulty Data (%) | ICC (%) | Overall Quality (%) |
|---|---|---|---|---|---|
| iHealth Clear | 238 | 97.54 | 7.14 | 91.00 | 90.58 |
| iHealth Track | 237 | 97.13 | 5.44 | 90.00 | 91.18 |
| Withings BPM | 243 | 99.59 | 8.20 | 95.00 | 92.47 |
| iHealth View | 239 | 97.95 | 9.05 | 96.00 | 91.03 |
Figure 8Ontological form of Withings BPM dataset.
Structural similarity between attributes of HL7 FHIR resources and Withings BPM dataset.
| Dataset Attribute | Top-1 Similarity | Top-2 Similarity | ||
|---|---|---|---|---|
| HL7 FHIR Resource Attribute | Structural Similarity (%) | HL7 FHIR Resource Attribute | Structural Similarity (%) | |
| identifier | Observation.identifier | 54 | DiagnosticReport.identifier | 23 |
| status | Observation.status | 61 | DiagnosticReport.status | 34 |
| category | Observation.category | 29 | DiagnosticReport.category | 22 |
| sub-category | Observation.category | 34 | DiagnosticReport.category | 28 |
| patient | Patient | 100 | - | 0 |
| patient.identifier | Patient.identifier | 100 | - | 0 |
| patient.name | Patient.name | 100 | - | 0 |
| dateOfMeasurement | Observation.effectiveDateTime | 56 | Observation.valueDateTime | 32 |
| practitioner | Practitioner | 100 | - | 0 |
| practitioner.identifier | Practitioner.identifier | 100 | - | 0 |
| practitioner.name | Practitioner.name | 100 | - | 0 |
| measuredValue | Observation.valueQuantity | 82 | Observation.valueRange | 13 |
Semantic similarity between attributes of HL7 FHIR Resources and Withings BPM dataset.
| Dataset Attribute | Top-1 Similarity | Top-2 Similarity | ||
|---|---|---|---|---|
| HL7 FHIR Resource Attribute | Semantic Similarity (%) | HL7 FHIR Resource Attribute | Semantic Similarity (%) | |
| identifier | Observation.identifier | 56 | Patient.identifier | 39 |
| status | Observation.status | 81 | DiagnosticReport.status | 17 |
| category | Observation.category | 74 | DiagnosticReport.category | 21 |
| sub-category | Observation.code | 44 | Observation.category | 32 |
| patient | Observation.subject | 39 | Patient | 34 |
| patient.identifier | Observation.subject.identifier | 54 | Patient.identifier | 43 |
| patient.name | Observation.subject.name | 53 | Patient.name | 47 |
| dateOfMeasurement | DiagnosticReport. | 53 | Observation. | 36 |
| practitioner | Observation.subject | 63 | Practitioner | 22 |
| practitioner.identifier | Observation.subject.identifier | 68 | Practitioner.identifier | 15 |
| practitioner.name | Observation.subject.name | 74 | Practitioner.name | 19 |
| measuredValue | Observation.valueQuantity | 100 | - | 0 |
Overall similarity results Withings BPM dataset.
| Dataset Attribute | HL7 FHIR Resource Attribute | Overall Similarity (%) |
|---|---|---|
| identifier | Observation.identifier | 55.0 |
| status | Observation.status | 71.0 |
| category | Observation.category | 51.5 |
| sub-category | Observation.code | 39.0 |
| patient | Patient | 67.0 |
| patient.identifier | Patient.identifier | 71.5 |
| patient.name | Patient.name | 73.5 |
| dateOfMeasurement | Observation.effectiveDateTime | 46.0 |
| practitioner | Practitioner | 61.0 |
| practitioner.identifier | Practitioner.identifier | 57.5 |
| practitioner.name | Practitioner.name | 59.5 |
| measuredValue | Observation.valueQuantity | 91.0 |
Figure 9Snapshot of Withings BPM interoperable data in XML.
Manual and automatic overall quality results.
| Device Name | Availability (%) | Faulty Data (%) | ICC (%) | Overall Quality (%) |
|---|---|---|---|---|
|
| ||||
| iHealth Clear | 97.54 | 7.14 | 91.00 | 90.58 |
| iHealth Track | 97.54 | 4.60 | 90.00 | 92.05 |
| Withings BPM | 99.59 | 8.20 | 95.00 | 92.47 |
| iHealth View | 97.95 | 8.23 | 96.00 | 91.60 |
|
| ||||
| iHealth Clear | 97.54 | 7.14 | 91.00 | 90.58 |
| iHealth Track | 97.13 | 5.44 | 90.00 | 91.18 |
| Withings BPM | 99.59 | 8.20 | 95.00 | 92.47 |
| iHealth View | 97.95 | 9.05 | 96.00 | 91.03 |
Figure 10Comparison between manual and automatic overall quality results.
Manual and automatic overall ontology mapper results.
| Method Identifier | Manual Results | Similarity (%) | Automatic Results | Similarity (%) |
|---|---|---|---|---|
| identifier | Observation.identifier | 100 | Observation.identifier | 55.0 |
| status | Observation.status | 100 | Observation.status | 71.0 |
| category | Observation.category | 100 | Observation.category | 51.5 |
| sub-category | Observation.code | 100 | Observation.code | 39.0 |
| patient | Observation.subject | 100 | Patient | 67.0 |
| patient.identifier | Observation.subject.identifier | 100 | Patient.identifier | 71.5 |
| patient.name | Observation.subject.name | 100 | Patient.name | 73.5 |
| dateOfMeasurement | Observation.effectiveDateTime | 100 | Observation.effectiveDateTime | 46.0 |
| practitioner | Observation.subject | 100 | Practitioner | 61.0 |
| practitioner.identifier | Observation.subject.identifier | 100 | Practitioner.identifier | 57.5 |
| practitioner.name | Observation.subject.name | 100 | Practitioner.name | 59.5 |
| measuredValue | Observation.valueQuantity | 100 | Observation.valueQuantity | 91.0 |
Figure 11Comparison between manual and automatic overall interoperability results.