Content area
Background
The advancement of technology and continuous glucose monitoring (CGM) systems has introduced several computational and technical challenges for clinicians and researchers. The growing volume of CGM data necessitates the development of efficient computational tools capable of handling and processing this information effectively. This paper introduces GlucoStats, an open-source and multi-processing Python library designed for efficient computation and visualization of a comprehensive set of glucose metrics derived from CGM. It simplifies the traditionally time-consuming and error-prone process of manual CGM metrics calculation, making it a valuable tool for both clinical and research applications.
Results
Its modular design ensures easy integration into predefined workflows, while its user-friendly interface and extensive documentation make it accessible to a broad audience, including clinicians and researchers. GlucoStats offers several key features: (i) window-based time series analysis, enabling time series division into smaller ‘windows’ for detailed temporal analysis, particularly beneficial for CGM data; (ii) advanced visualization tools, providing intuitive, high-quality visualizations that facilitate pattern recognition, trend analysis, and anomaly detection in CGM data; (iii) parallelization, leveraging parallel computing to efficiently handle large CGM datasets by distributing computations across multiple processors; and (iv) scikit-learn compatibility, adhering to the standardized interface of scikit-learn to allow an easy integration into machine learning pipelines for end-to-end analysis.
Conclusions
GlucoStats demonstrates high efficiency in processing large-scale medical datasets in minimal time. Its modular design enables easy customization and extension, making it adaptable to diverse research and clinical needs. By offering precise CGM data analysis and user-friendly visualization tools, it serves both technical researchers and non-technical users, such as physicians and patients, with practical and research-driven applications.
Background
Over the last decade, Continuous Glucose Monitoring (CGM) technology has substantially contributed to track and control glucose dynamics in people with diabetes [1]. CGM devices automatically provide information on interstitial glucose every 1–15 min, allowing for better glucose management and avoiding acute clinical complications [1]. CGM data have been extensively used in research and clinical practice [2, 3], particularly analyzing glucose fluctuations in response to various factors such as diet, physical activity, stress, and medications [4,5,6]. In most studies, a variety of CGM-derived metrics have been computed to assess glycemic variability. These features provide an understanding of glucose dynamics beyond simple average levels, allowing researchers to assess the stability and quality of glucose management effectively.
Despite the advantages of using CGM-derived metrics, the automatic extraction presents several computational and technical challenges for clinicians and researchers. Because collected data is longitudinal and temporal and depends on the number of individuals and the periods (or time windows), extraction can be a complex task. The increase in the volume of CGM requires the development of efficient computational tools that can handle and process data efficiently. There are multiple CGM-derived metrics used in research, however these are not standardized, and little validation exists across studies [7,8,9,10].
Several libraries have been developed for the extraction of metrics from glucose data, in different programming languages and environments such as in R (cgmanalysis [11] and iglu [12]), in MATLAB (GVAP [13]) and in web-based applications (GlyCulator 3.0 [14] and CGM-GUIDE [15]). However, while Python is currently the most popular programming language in data science, only one Python-based package, Cgmquantify [16], is available. This package extracts only 25 features from glucose data and lacks visual representation tools that would facilitate deeper analysis. Additionally, most of these libraries do not allow the efficient extraction of statistics (with parallelization) and do not allow defining extraction by segments or intervals (‘windows’). Lastly, Olsen et al. [17] conducted a review of statistical methods and packages for CGM data and identified two significant limitations in existing tools: (1) the absence of functionalities that allow easy comparison between users, and (2) the lack of graphical outputs accessible to non-programmers. This gap highlights the need for an open-source, Python-based library that combines efficiency, ease of use, and broad functionality to support comprehensive CGM data analysis.
As a conclusion, as CGM technology continues to advance, the ability to interpret and visualize increasingly large volumes of CGM data becomes crucial to support clinicians and patients in the monitoring, management, and control of diabetes. Despite the growing use of CGM data in research, there remains a lack of open-source, multi-processing tools for data extraction and analysis. To address the need for comprehensive and efficient analysis of glucose time series, the proposed package GlucoStats offers the following key contributions:
1. 1.
Full implementation in Python, enabling seamless integration with modern data science workflows.
2. 2.
Support for extracting a broad spectrum of critical statistics that thoroughly characterize glucose dynamics.
3. 3.
Utilization of parallel processing to significantly enhance computational efficiency.
4. 4.
Flexible feature extraction over user-defined temporal windows, allowing for refined time-based analyses.
5. 5.
Generation of insightful visualizations that facilitate both intra-patient and inter-patient comparisons.
6. 6.
An intuitive, user-friendly interface designed to be accessible even to non-technical users.
Implementation
GlucoStats was developed using Python 3.10 with a focus on modularity, parallelization and extensibility with other libraries (e.g., scikit-learn). It is publicly available in PyPI (pypi.org/project/glucostats) and GitHub (github.com/ai4healthurjc/glucostats). We employed Pandas (v2.2.3) for efficient data manipulation and NumPy (v2.2.3) for high-performance numerical computations, leveraging their powerful data handling capabilities and ensuring interoperability within the Python ecosystem. The library also uses Matplotlib (v3.8.0) and Seaborn (v0.13.2) to generate high-quality visualizations, enabling the visual analysis of glucose patterns with minimal effort. For high-performance processing, GlucoStats supports parallel computation through Python’s threads. By specifying the number of worker threads, users can accelerate the feature extraction process. The parallel backend is fully configurable, offering flexibility to match the user’s computing environment. A comprehensive documentation is provided to guide users through the installation and usage of GlucoStats in glucostats.readthedocs.io/en/latest. This makes the library accessible to both beginners and experienced developers working in the field of diabetes research and clinical care.
Software architecture
The GlucoStats architecture follows several software design principles that ensure that the system is robust, maintainable and easy to understand. Modularity and the Single Responsibility Principle ensure that each module in the architecture is dedicated to a specific responsibility, performs a unique task (statistics calculation, data processing utilities, visualization) and is totally independent. The architecture is designed with minimal external dependencies to reduce version conflicts and simplify installation. Thanks to its modular design, it can be easily integrated into other Python applications. Figure 1 presents the main components of the library. GlucoStats is organized into four main modules, which collaborate to provide a robust set of tools and functionalities:
*
Stats: it is the core of the library and is responsible for calculating statistics from CGM data. It calls several Python scripts specialized in different types of statistics.
*
Utils: it provides a set of utilities that facilitate data handling and input format verification, as well as other auxiliary functions to perform data transformations.
*
Visualization: it includes visualization methods to display various statistical metrics for both intra-patient (i.e., within a single patient) and inter-patient (i.e., across multiple patients) analyses over time.
*
ExtractGlucoStats: it is the main component that orchestrates all the functionalities of the library. This class makes use of the three modules mentioned above to provide a unified interface that allows the extraction, transformation, analysis and visualization of CGM data.
[IMAGE OMITTED: SEE PDF]
Software functionalities
1. 1.
Parallelization and fast processing: it has the ability to handle large CGM data efficiently through parallel processing techniques, thus distributing feature extraction across multiple processors. Broadly speaking, it enables the division of the time-intensive task of extracting statistics from the entire dataset into multiple sub-tasks, each focusing on extracting statistics from specific data batches. These sub-tasks can be executed simultaneously reducing processing time and optimizing the use of hardware resources.
2. 2.
Windowing: it allows us to analyze time series by dividing it into smaller segments (also called intervals or ‘windows’) rather than examining the entire time series. The local statistics per window help to capture and understand the dynamic properties of CGM data in more detail. In particular, two window types are implemented: (i) overlapping; and (ii) non-overlapping. For overlapping windows, the library captures fine-grained changes and trends within short periods, providing a more continuous and sensitive analysis of glycemic patterns. For non-overlapping windows, it offers a broader view of glucose fluctuations over longer intervals, facilitating the identification of more stable trends and periodic behaviors.
3. 3.
Scikit-learn friendly: it refers to the compatibility to the standardized interface defined by the scikit-learn, with ease of integration with other methods of this library. Thanks to this, custom components such as GlucoStats can be seamlessly integrated into scikit-learn pipelines, allowing for the consistent and modular construction of end-to-end machine learning workflows. This compatibility ensures that the components work effectively with scikit-learn’s utilities for model selection, evaluation, and hyperparameter optimization.
4. 4.
Visualization: it offers a range of useful and efficient methods for interpreting CGM data. By displaying information visually, these approaches simplify the identification of patterns, trends, and anomalies, thus improving decision-making and effectively presenting results.
Feature extraction
GlucoStats enables the extraction of a set of 59 statistics, each intended to characterize glucose time series for in-depth study and analysis. According to the nature of the statistics and the type of information that they extract, we systematically categorized them into six categories, described below.
1. 1.
Time in ranges (TIRs): Time-related statistics that measure the time elapsed within different glucose ranges. These ranges typically include normal, low (hypoglycemia), and high (hyperglycemia) glucose levels. TIR statistics help to understand how much time a patient spends within a healthy range or elevated/low range. Note that these ranges can be customizable by the users.
2. 2.
Number of observations (NOs): Statistics that count the number of observations within different glucose ranges. NOs-based statistics provide insights about the frequency of values falling into specific ranges. These features support to identify of the prevalence of readings in certain ranges, which may indicate issues or behaviors that may be modified to improve glucose control.
3. 3.
Descriptive statistics (DSs): Statistics that summarize CGM data over time, including the mean, minimum, maximum, quantiles, among others. These provide an overall understanding of average levels throughout specific time periods.
4. 4.
Glucose risks (GRs): Metrics that help assess the risk of extreme glucose events, such as hypoglycemia (low glucose) and hyperglycemia (high glucose). These metrics are used for prevention, allowing treatment and behavior adjustments to reduce the likelihood of experiencing out-of-range glucose episodes.
5. 5.
Glycemic control (GC): GC metrics help determine the effectiveness of treatments for controlling glucose, evaluating the stability of glucose levels and how close the results are to established control targets.
6. 6.
Glucose variability (GV): GV measures the amplitude and frequency with which glucose levels fluctuate over time, leading to capture glucose changes from one moment to another. GV metrics allow for assessing fluctuations and stabilizing glucose levels to maintain more consistent and safe control throughout the day.
These main categories are split into 16 subcategories. Table 1 shows the organization of each category and subcategory along with a brief description.
[IMAGE OMITTED: SEE PDF]
Visualization tools
GlucoStats provides intuitive and efficient methods for interpreting complex data through visual representations that simplify the identification of trends, and anomalies, enhancing decision-making and pattern recognition. We have implemented two key methods to analyze both intra-patient and inter-patient variability: glucose signal plotting and heatmaps.
Glucose signal plotting shows glucose levels over time with a color-coded background that indicates different glucose ranges. This visualization helps track fluctuations within a predefined period and enables the comparison of CGM data, either for intra-patient variability or inter-patient variability. Heatmaps represent glucose variability over time by mapping days on the x-axis and time intervals on the y-axis, with each column corresponding to a single day and blocks within columns displaying calculated statistics for different time windows. Heatmaps are useful for analyzing variability over longer time horizons, two options of analysis are available: (i) intra-patient variability; and inter-patient variability.
Results
This section presents the results of applying the proposed library, GlucoStats, to an example dataset. It explains how to preprocess the datasets, apply the library, and generate the available plots and metrics.
Dataset preprocessing and data formats
In order to show and validate the functionalities of our proposed library, we applied GlucoStats to the publicly available Aleppo dataset [18]. It contains CGM data from 225 type 1 diabetes (T1D) adults (aged between 25 and 40 years) recorded using a Dexcom G4 device over a period of six months. Before applying GlucoStats, several preprocessing steps were necessary to structure the data as shown in Fig. 4 in Appendix A. CGM data have to be formatted as a pandas.DataFrame, where the index represents the unique identifier of each time series, and contain two columns: (i) one that stores timestamps in datetime format; and (i) other columns comprising CGM data in mg/dL. The dataFrame must not contain missing values, and in case of identifying missing data, by default, linear imputation is performed.
Class instantiation
The Algorithm 1 and Fig. 5 in Appendix A show examples of how to instantiate the class ExtractGlucoStats. A list of strings with the statistic names, the subcategory names or category names can be provided for feature extraction. GlucoStats allows us to segment glucose time series into smaller windows, enabling a more detailed temporal resolution. To use this functionality, the windowing parameter must be set to True. When windowing is enabled, four additional hyperparameters may be specified:
*
windowing_method: it defines the windowing type, with four available options: number of windows, static length, dynamic lengths, and personalized length.
*
windowing_param: it represents the the window size.
*
windowing_overlap: it determines whether overlapping windows should be used.
*
windowing_start: it defines where the windowing begins. There are two options: (i) ‘head’ for starting from the beginning of the time series; and (ii) ‘tail’ for starting from the end.
For large datasets, it is useful to split the data into smaller groups, or batches. The batching method divides the dataset into chunks according to a specified batch size. Furthermore, the library supports parallel computing by leveraging Python’s threads module. This allows the computation of glucose-related metrics to be distributed across multiple CPU threads. Specifically, when processing data from multiple patients or across multiple time windows, tasks are divided into independent threads that run concurrently, significantly improving execution efficiency for large datasets. The level of parallelism can be controlled through optional parameters, giving users flexibility based on their hardware capabilities.
[IMAGE OMITTED: SEE PDF]
Configuration for statistics extraction
The next step is to specify the required parameters for the computation of some statistics. A default configuration is already available; however, if the specific scenario requires a different setup, you can define a new configuration using the method configuration() method as shown in Algorithm 2. An example is presented in Fig. 6 in Appendix A.
[IMAGE OMITTED: SEE PDF]
The parameters required for statistical calculations are as follows.
*
In-range interval: Defines the glucose range to determine whether levels are within the target range. It must be provided as a list containing the lower and upper limits. The default value is [70, 180] mg/dL.
*
Time units: Specifies the time units for returning time-related statistics. Available options are ‘h’ (hours), ‘m’ (minutes), or ‘s’ (seconds), with a default of ‘m’.
*
Ddof (Delta Degrees of Freedom): Adjusts the estimation of the mean in the sample data, used for calculating the standard deviation. The divisor in calculations is \(N - \text {ddof}\), where \(N\) is the number of elements. Must be an integer, with a default of 1.
*
Quantiles: Specifies the quantiles to be calculated. Must be a list of values between 0 and 1. The default is [0.25, 0.5, 0.75].
*
Threshold: The reference value for calculating the area under the curve (AUC).
*
Where: Determines whether the AUC is calculated above or below the threshold. Must be set to ‘above’ (for values above the threshold) or ‘below’ (for values below the threshold). The default is ‘above’.
*
Exponents and scaling factors for control indexes (a, b, c, d): Parameters used for control index calculations. Typically, a ranges from 1.0 to 2.0, b ranges from 1.0 to 2.0, whereas c and d are generally set to 30. Default values: \(a=1.1\), \(b=2.0\), \(c=30\), and \(d=30\).
*
Ideal glucose level: The target glucose level used for m-value calculation. Must be an integer or float, with a default of 120 mg/dL.
GlucoStats application
Once ExtractGlucoStats is instantiated and configured, the transform method is used to extract statistics from a given dataset (see Algorithm 3). The output format of the method consists of multiple columns containing the identifier and the extracted feature names. For the windowing approach, the feature names are concatenated, with a number reflecting the identifier of the window. Additionally, Fig. 7 in Appendix A shows the method calls used to visualize both inter-patient and intra-patient variability.
[IMAGE OMITTED: SEE PDF]
[IMAGE OMITTED: SEE PDF]
[IMAGE OMITTED: SEE PDF]
Figures 2 and 3 present a set of heatmaps designed to explore glucose variability using different statistical measures. Specifically, Fig. 2 focuses on intra-patient variability for Patient 2, while Fig. 3 compares this patient’s data with that of three additional patients over a shared time period. In both figures, subplot (a) displays the raw CGM signal, while subplots (b) through (e) depict four derived statistical metrics: the coefficient of variation (CV), mean absolute glucose (MAG), mean, and standard deviation (STD). These heatmaps offer a comprehensive visual summary of glucose dynamics across different days and time intervals, facilitating the identification of temporal trends, variability, and potential glycemic irregularities.
In Fig. 2, we observe notable temporal fluctuations in both CV and MAG for Patient 2. For instance, CV values display sporadic peaks, particularly during evening hours, indicating periods of increased glucose instability. The MAG heatmap highlights days with pronounced variability, such as May 6, 2015, where a marked rise in both CV and MAG suggests abnormal glucose fluctuations. Likewise, the mean and STD plots reveal a mix of stable and unstable patterns across days. For example, on May 24, 2015, the mean glucose levels are abnormally high throughout the day, pointing to a potential glycemic irregularity. These intra-patient insights help identify patient-specific and time-specific trends, including glucose excursions and potential high-risk windows–times when sharp glucose spikes or drops are more likely to occur. However, without contextual data (e.g., meal timing, physical activity, insulin administration), the underlying clinical causes of these patterns remain speculative. Therefore, these visualizations can be highly valuable for healthcare providers, prompting targeted questions to patients regarding their behavior, diet, or events on days when anomalies are detected.
Figure 3 extends the analysis to the inter-patient level, enabling a comparative evaluation of glycemic variability across different users. Notably, Patient 7 exhibits higher mean glucose levels during the early morning hours, in contrast to Patient 3, who shows elevated CGM readings during the late afternoon. In terms of CV, Patient 2 demonstrates consistently lower variability throughout the observed period compared to the other patients, indicating a more stable glycemic profile. These differences may reflect underlying factors such as treatment regimen, insulin sensitivity, or daily lifestyle habits. Such inter-patient comparisons highlight the added value of combining CGM-derived metrics with individual-level metadata, allowing for more personalized and clinically relevant interpretations of glucose dynamics.
These heatmaps support exploratory analysis and provide a powerful tool for identifying both consistent patterns and anomalies in glucose dynamics. This can guide personalized diabetes management strategies by highlighting specific time frames and individuals with higher glycemic variability.
Discussion
GlucoStats is designed to support both the research community and practical diabetes management by efficiently processing and analyzing large-scale CGM datasets. In research, this library can support studies on glycemic variability, treatment efficacy, and physiological responses to different interventions. Its comprehensive feature extraction capabilities, combined with customizable windowing methods, enable researchers to conduct more detailed analyses, leading to a deeper understanding of glucose patterns over time. Moreover, the extracted features can serve as input for machine learning models for clustering patient patterns or training predictive models.
Beyond research, GlucoStats provides a comprehensive toolset for analyzing CGM data, along with visualization tools designed to support non-technical users. By displaying data across both dates and time of day, it becomes easier to observe daily fluctuations. Also, recurrent patterns in heatmaps associated with statistics in specific time slots or days can indicate meal effects, medication efficiency, or lifestyle influences, helping to detect periods of high variability, which may be crucial for managing glucose levels effectively. Physicians will be able to monitor and analyze key metrics to assess a patient’s health evolution over time, while patients can enhance their self-awareness, which is essential for effective glycemic control.
GlucoStats is currently being integrated into a real-world mobile-based application as part of the WARIFA project [19], an international initiative involving researchers from multiple European countries that aims to develop an AI-driven system for personalized early risk prediction of noncommunicable diseases. In this context, GlucoStats is used for two main purposes: (1) to extract statistical features from CGM data over defined time windows, which are then used as input for training AI models to predict glycemic events in individuals with T1D; and (2) to generate key metrics and visual summaries, such as time-series plots and variability heatmaps, which are saved in interpretable file formats to support data review by patients and healthcare professionals. These use cases illustrate the practical applicability of GlucoStats in ongoing clinical research and digital health development.
Lastly, for future versions, we plan to extend the visualization components of GlucoStats by incorporating dynamic visualizations, enabling users to analyze data in real-time, including the integration of dashboard functionalities. Additionally, we aim to enhance GlucoStats to support and analyze multimodal data, such as physical activity and dietary logs. This approach will enhance the understanding of factors affecting glycemic control, enabling more personalized diabetes management. Lastly, we aim to implement robust and interpretable unsupervised learning approaches [20] for clustering patients based on the statistical features extracted from their CGM data. This will add more value to the library and help clinicians detect possible subgroups among patients. By evolving GlucoStats, we aim to equip healthcare professionals and researchers with a stronger toolset for glucose data analysis and management.
Conclusions
In this paper, we presented GlucoStats, an efficient Python library designed for the extraction and visualization of CGM-derived statistics. GlucoStats automates the extraction of key metrics from CGM data and generates visual representations, providing useful tools to support healthcare professionals and researchers for interpreting glucose dynamics. Feature extraction can be performed on subsequences (windows) of the global time series through a process called windowing, enhancing the analysis by capturing detailed temporal patterns. Additionally, by leveraging parallelization and batching capabilities, GlucoStats demonstrates its efficiency in processing large medical datasets within a reduced time frame. Furthermore, the library’s modular design ensures adaptability, allowing users to extend and customize its functionality to meet specific research and clinical needs. This library is designed to support both the research community and practical applications by enabling more precise and detailed CGM data analyses. It also provides a comprehensive toolset for glucose analysis, along with visualization tools designed to support non-technical users such as physicians and patients.
Availability and requirements
*
Project name: GlucoStats.
*
Project home page: https://github.com/ai4healthurjc/glucostats.
*
Operating system(s): Platform independent.
*
Programming language: Python 3.10.
*
Other requirements: numpy(2.2.3), matplotlib(3.10.1), pandas(2.2.3), colorlog (4.6.0), neurokit2(0.2.10), seaborn(0.13.2), tqdm(4.67.1), scipy(1.15.2).
*
License: BSD.
*
Any restrictions to use by non-academics: None.
Data availability
The dataset analysed during the current study are available in the Awesome-CGM repository at the following link: https://github.com//IrinaStatsLab//Awesome-CGM
Abbreviations
AUC:
Area under the curve
CGM:
Continuous glucose monitoring
CV:
Coefficient of variation
Ddof:
Delta degrees of freedom
DSs:
Descriptive statistics
GC:
Glycemic control
GRs:
Glucose risks
GV:
Glucose variability
MAG:
Mean absolute glucose
NOs:
Number of observations
STD:
Standard deviation
T1D:
Type 1 diabetes
TIRs:
Time in ranges
t-SNE:
T-distributed stochastic neighbor embedding
UMAP:
Uniform manifold approximation and projection
Klonoff DC, Ahn D, Drincic A. Continuous glucose monitoring: a review of the technology and clinical use. Diabetes Res Clin Pract. 2017;133:178–92.
Lara-Abelenda FJ, Chushig-Muzo D, Wägner AM, Tayefi M, Soguero-Ruiz C. Interpretable and multimodal fusion methodology to predict severe hypoglycemia in adults with type 1 diabetes. Eng Appl Artif Intell. 2025;144:110142.
Lara-Abelenda FJ, Chushig-Muzo D, Peiro-Corbacho P, Wägner AM, Granja C, Soguero-Ruiz C. Personalized glucose forecasting for people with type 1 diabetes using large language models. Comput Methods Progr Biomed. 2025;265:108737.
Weinstock RS, DuBose SN, Bergenstal RM, Chaytor NS, Peterson C, Olson BA, Munshi MN, Perrin AJ, Miller KM, Beck RW, et al. Risk factors associated with severe hypoglycemia in older adults with type 1 diabetes. Diabetes Care. 2016;39(4):603–10.
Horsch A, Kang JS, Vial Y, Ehlert U, Borghini A, Marques-Vidal P, Jacobs I, Puder JJ. Stress exposure and psychological stress responses are related to glucose concentrations during pregnancy. Br J Health Psychol. 2016;21(3):712–29.
Kovatchev B. Glycemic variability: risk factors, assessment, and control. J Diabetes Sci Technol. 2019;13(4):627–35.
Gabbay MAL, Rodacki M, Calliari LE, Vianna AGD, Krakauer M, Pinto MS, Reis JS, Puñales M, Miranda LG, Ramalho AC, et al. Time in range: a new parameter to evaluate blood glucose control in patients with diabetes. Diabetol Metab Syndr. 2020;12:1–8.
Nguyen M, Han J, Spanakis EK, Kovatchev BP, Klonoff DC. A review of continuous glucose monitoring-based composite metrics for glycemic control. Diabetes Technol Ther. 2020;22(8):613–22.
Sofizadeh S, Pehrsson A, Ólafsdóttir AF, Lind M. Evaluation of reference metrics for continuous glucose monitoring in persons without diabetes and prediabetes. J Diabetes Sci Technol. 2022;16(2):373–82.
Castro C, Vigil L, Vargas B, Garcia Delgado E, Garcia Carretero R, Ruiz-Galiana J, Varela M. Glucose time series complexity as a predictor of type 2 diabetes. Diabetes Metab Res Rev. 2017;33(2):2831.
Vigers T, Chan CL, Snell-Bergeon J, Bjornstad P, Zeitler PS, Forlenza G, Pyle L. cgmanalysis: an r package for descriptive analysis of continuous glucose monitor data. PLoS ONE. 2019;14(10):1–12.
Broll S, Urbanek J, Buchanan D, Chun E, Muschelli J, Punjabi NM, Gaynanova I. Interpreting blood glucose data with r package iglu. PLoS ONE. 2021;16(4):1–17.
Marics G, Lendvai Z, Lódi C, Koncz L, Zakariás D, Schuster G, Mikos B, Hermann C, Szabó AJ, Tóth-Heyn P. Evaluation of an open access software for calculating glucose variability parameters of a continuous glucose monitoring system applied at pediatric intensive care unit. Biomed Eng Online. 2015;14:1–13.
Chrzanowski J, Grabia S, Michalak A, Wielgus A, Wykrota J, Mianowska B, Szadkowska A, Fendler W. Glyculator 3.0: a fast, easy-to-use analytical tool for CGM data analysis, aggregation, center benchmarking, and data sharing. Diabetes Care. 2022;46(1):3.
Rawlings RA, Shi H, Yuan L-H, Brehm W, Pop-Busui R, Nelson PW. Translating glucose variability metrics into the clinic via continuous glucose monitoring: a graphical user interface for diabetes evaluation (CGM-guide). Diabetes Technol Ther. 2011;13(12):1241–8.
Bent B, Henriquez M, Dunn JP. Cgmquantify: Python and r software packages for comprehensive analysis of interstitial glucose and glycemic variability from continuous glucose monitor data. IEEE Open J Eng Med Biol. 2021;2:263–6.
Olsen MT, Klarskov CK, Dungu AM, Hansen KB, Pedersen-Bjergaard U, Kristensen PL. Statistical packages and algorithms for the analysis of continuous glucose monitoring data: a systematic review. J Diabetes Sci Technol. 2024;19:787.
Xu X, Kok N, Tan J, Martin M, Buchanan D, Chun E, Bhat R, Cass S, Wang E, Senthil S, Gaynanova I. IrinaStatsLab/Awesome-CGM: Updated release with additional public CGM dataset and enhanced processing (v2.0.0). Zenodo (2024)
WARIFA Project (2024) WARIFA: Personalized risk prediction for non-communicable diseases. Accessed on 28 Apr 2025. https://www.warifa.eu/es/home-es/
Moujahid A, Dornaika F. Advanced unsupervised learning: a comprehensive overview of multi-view clustering techniques. Artif Intell Rev. 2025;58(8):1–52.
© 2025. This work is licensed under http://creativecommons.org/licenses/by-nc-nd/4.0/ (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.