2
$\begingroup$

I have been working with Real World data from patients. I have a dataset with information about 10million patients; Collected over a span of varying duration (5 to 20 years).

  • What I am predicting is a binary risk (or maybe the probability of that risk),
  • Most features are constant (family history, smoker (y/n)...), but,
  • I have some time-dependant features (e.g., weight, cholesterol value, glucose value...),
  • (Also, these features were collected at different time points, i.e., for some patients, we have semestral info, for some patients, we have 2 measures in 15 years)
  • So far I have been predicting my target considering my features are static (by averaging values, or using the most recent one) using XGBoost Classifier or other classifiers.
  • Could I try to use a time series for this case? Or just stick to ML Classifiers and try to incorporate the progression of values in another way?
  • Has someone had a similar problem?

Cheers!

$\endgroup$

2 Answers 2

0
$\begingroup$

Simply extract feature from temporal data and add it to your columns and use it for prediction. This is the simplest approach.

Another one is to use any embedding method for converting temporal data into vectors and use those vectors along with other features (what you call static features). Autoencoders, graph-based time-series embeddings or transformers (from NLP field) can be used for such embeddings. In general you can do a simple research to see what kind of methods are out there for embedding of time-series.

$\endgroup$
0
$\begingroup$

An easy (but not the best solution) would be to have separate columns - one for the oldest data, one for the newest data and one for the difference between the newest and the oldest. I am saying this is an easy solution, as you can use it in cases that you have only 2 time points, you can use it in cases you have more than 2, and you can use it when you have only 1 case (newest = oldest; difference = 0). Then run a classifier model like XGBoost.

$\endgroup$

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.