I have a dataset of patients where, for each patient, a measurement is taken 3 times per day. For example, patient 1 has recordings at 7.30 am, 12.30 pm and 8.30 pm. Patient 1 has a collection of 30 days with such data recorded thrice a day.(altogether 3 recordings per day * 30 days = 90 data points).

Is this type of data suitable for time-series forecasting?

Thanks in advance for the help.


Welcome to the site!

Forecasting can be done using any length of time series. For example, if I have a set of data {1, 10, 19, 28}, then I can be pretty sure that the next value in the set is going to be 37 (because there is a strong pattern here: 10=1+9, 19=10+9, etc.).

So if you have a strong signal, then even if you don't have a very long sequence, you can get a pretty accurate forecast.

The question becomes: what type of time series forecasting model should you use?

I would avoid any type of neural network here (the Data Science forum often talks about neural networks of some type). Your data are not rich enough to support estimation of the hundreds (to millions!) of parameters that such models require.

Instead, I would try something fairly simple to start, like a moving average or perhaps an ARIMA-type model.

Remember, each patient is independent (hopefully!) but each measurement per patient is dependent (i.e. if you have patient 1 at time 1, patient 2 at time 2, and patient 3 at time 3, each patient time measurement is dependent on the patient). So if you want to forecast "the value at 7:30 AM regardless of the patient", that's different from forecasting "patient 1's value at 10 pm".

Hope that at least gives you a starting point!

  • $\begingroup$ Thank you very much for your guidance.what if I want to forecast "the value at 7:30 AM regardless of the patient"? Assume that there is a new patient in which they have no data recorded previously, so after his first data (eg: 7:30 am - 85) how can I forecast for that particular patient. $\endgroup$ – HelloWorld Nov 20 '19 at 9:16
  • $\begingroup$ Thanks in advance $\endgroup$ – HelloWorld Nov 20 '19 at 9:16
  • 1
    $\begingroup$ The best forecast, without any further information, would probably be the average of the other patients' values at 7:30 AM. For example, say patient X is new, and you have no previous data on this patient, and you want to forecast patient X's value at 7:30 AM. Then you could average the values of all other patients at 7:30 AM and use that as your estimate for patient X. If you have no other information on patient X, then that's your best guess as to patient X's value. Hope that helps! $\endgroup$ – StatsSorceress Nov 20 '19 at 14:02
  • $\begingroup$ Thank you very much....I will work on it and let you know $\endgroup$ – HelloWorld Nov 20 '19 at 22:52
  • $\begingroup$ Hey, when i go through my dataset I didn't find a strong pattern, because it already depends on the food patient eat. So is that means I am unable to use any time series forecasting model? :( $\endgroup$ – HelloWorld Jan 21 at 2:22

Sure! A time-series is just a set of data points indexed temporally, and that's exactly what you have for each patient.

You can certainly build a forecaster using this data. You may run into a couple wrinkles since your data is not spaced evenly, but that's not an insurmountable barrier.

If you want to quickly prototype a forecasting model, FB Prophet is incredibly easy to use and often works well out-of-the-box.

  • $\begingroup$ Thank you very much for your guidance. $\endgroup$ – HelloWorld Nov 20 '19 at 9:10
  • $\begingroup$ Yah sure will take a look on FB Prophet. Thanks again $\endgroup$ – HelloWorld Nov 20 '19 at 9:19

Since the recording of data is same at regular time intervals for every patient, you are getting a good daily time series data.

And given your question which says you are recording a single measurement daily that means you have a univariate time series analysis problem, as the forecasting is based on just the past values of series data not any other variables.

Hence the data is definitely helpful.

Just keep in mind to not forecast for longer intervals, since the cycle of data is daily, you can forecast may be upto next three days (may be try to start with just one day. You can try ARIMA for this.

  • $\begingroup$ Thank you very much for your guidance. $\endgroup$ – HelloWorld Nov 20 '19 at 9:17
  • $\begingroup$ I wondered why this was downvoted; then I saw the recommendation for a maximum of a three-period forecast, and I think that must've been it? Cini09, do you have any references for a maximum of a three-period forecast? On the face of it, it seems a bit like a "magic number". $\endgroup$ – StatsSorceress Nov 20 '19 at 13:59
  • $\begingroup$ So I recall I read somewhere that you cant forecast for longer periods with time series data, the prediction is reliable for the next month or two and not more than that.. I am not sure if I explained very well.. But that is what I was suggesting in my answer to not try to forecast for more days than 2-3 days.. $\endgroup$ – cap Nov 21 '19 at 19:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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