Непосредственное использование идентификатора пользователя в модели не очень хорошая идея, поскольку это приведет, как вы сказали, к большому количеству функций, но также и к переоснащению, поскольку вы получите один идентификатор на строку (если я правильно понял ваши данные ). Это также сделает вашу модель бесполезной в случае нового идентификатора пользователя, и вам придется переучивать свою модель каждый раз, когда у вас появляется новый пользователь.
В первую очередь я бы порекомендовал отбросить эту переменную и попытаться построить модель только с другими переменными.
Еще одна идея, которую вы можете попробовать, - это выполнить кластеризацию пользователей, которых вы основали на других функциях, а затем передать кластер как функцию вместо идентификатора пользователя, но я не знаю, хорошая ли это идея так как я не знаю, какие данные у вас есть.
Кроме того, вы говорите о прогнозировании на определенную дату. Данные, которые вы описали, не предполагают, что, если у вас есть количество часов на несколько дат, это ближе к проблеме прогнозирования временных рядов, которая отличается от «классической» проблемы регрессии.