I have a (training) dataset about what TV spectators are watching and for how long. The goal (at new set - the test set) is to predict for how long the TV spectators will watch a specific channel and show.
Specifically, I have the following predictors:
- TV Channel (e.g. BBC, CNN etc)
- Content (e.g. news, entertainment, business etc)
- Starting time (e.g. 11:00, 14:00 etc)
and the following target:
- End time (e.g. 12:00, 15:00 etc)
Obviously I am going to apply One Hot Encoding with the TV Channel
and Content
predictors and handle Starting time
in a way (see more here: Encoding features like month and hour as categorial or numeric?).
However, in my training set I may have multiple observations with the same predictors' values (e.g. 'BBC', 'news', '20:00') but with different output. This is obviouly done because different users are starting to watch the same thing at the same time but they stop at different times.
Is this going to be a problem since also my test set includes observations like these?
Specifically, I do not want to receive the same output (end-time) for these observations but I want to receive different outputs which (ideally) follow the distribution of the respective observations in the training set. How can I achieve this?
Shall I simply add a new categorical variable for each user?