glucopy.Gframe.grade#

Gframe.grade(percentage: bool = True)[source]#

Calculates the contributions of the Glycaemic Risk Assessment Diabetes Equation (GRADE) to Hypoglycaemia, Euglycaemia and Hyperglycaemia. Or the GRADE scores for each value.

\[GRADE = 425 * [\log_{10}(\log_{10} (X_i) + 0.16)]^2\]
  • \(X_i\) is the glucose value in mmol/L at time i.

The GRADE contribution percentages are calculated as follows:

\begin{align*} Hypoglycaemia % &= 100 * \frac{\sum GRADE(X_i < 3.9 [\text{mmol/L}])}{\sum GRADE(X_i)} \\ \text{Euglycaemia % &= 100 * \frac{\sum GRADE(3.9 [\text{mmol/L}] \leq X_i \leq 7.8 [\text{mmol/L}])}{\sum GRADE(X_i)} \\ \text{Hyperglycaemia %} &= 100 * \frac{\sum GRADE(X_i > 7.8 [\text{mmol/L}])}{\sum GRADE(X_i)} \end{align*}
Parameters:

percentage (bool, default True) – If True, returns a pandas.Series of GRADE score contribution percentage for Hypoglycaemia, Euglycaemia and Hyperglycaemia. If False, returns a list of GRADE scores for each value.

Returns:

grade – Series of GRADE for each day.

Return type:

pandas.Series

Examples

Calculating the contributions of GRADE to Hypoglycaemia, Euglycaemia and Hyperglycaemia:

In [1]: import glucopy as gp

In [2]: gf = gp.data('prueba_1')

In [3]: gf.grade()
Out[3]: 
Hypoglycaemia     15.998863
Euglycaemia        8.048088
Hyperglycaemia    75.953049
Name: GRADE, dtype: float64

Calculating the GRADE scores for each value:

In [4]: gf.grade(percentage=False)
Out[4]: 
array([18.31382179, 19.19466807, 21.03152427, ..., 16.11130759,
       17.80365615, 18.5670411 ])