1
$\begingroup$

I'm currently working on a small project using the D1NAMO dataset (1). I want to predict the glucose level (that is given in the dataset) based on several features: accelerometer data, heartbeat (ECG) data, breathing data and some other features. I have several users (006, 007, 008 etc) that all have a few days of data.

The problem is that the target value (glucose) is measured only once in 5 minutes, whereas the other measurements are done every few milliseconds. That means that in my data I have many rows without the target value. For example, for one user (008) I have 214 rows where I have a glucose level and around 60.000 rows where glucose is NaN. I want to use a model without the notion of time, so that could be anything such as FFNN, CNN, Decision Trees (XGBoost), ensembles etc.

Snapshot of my data: enter image description here

My questions:

  1. How should I deal with this problem where I have only few target values? Should I summarize all values in a window of 5 minutes to match with the target value?
  2. Should I make a model on the instance level or population level?

Thanks in advance for any replies.

(1) https://www-sciencedirect-com.vu-nl.idm.oclc.org/science/article/pii/S2352914818301059

$\endgroup$

1 Answer 1

1
$\begingroup$

I would try two different approaches:

  • interpolate the missing values on a user level.
  • work with the sunset of rows for which we actually have the glucose level.

Then, I would compare the test accuracy of the model built with both methods. Remember that your test set has to be composed of rows for which you have the glucose level - you cannot build it with interpolated data, that would be cheating!

$\endgroup$
1
  • $\begingroup$ Thanks, I will look into those! $\endgroup$
    – sander
    Commented Jun 17, 2020 at 17:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.