Assuming: DF1 and DF2 look something like:
So going to make some assumptions about what you want to do:
(1) you want a classification model like: I want to classify buyers/non buyers based on their overall attributes as well as their historical activity for a given time window:
- then you first have to create features based on the transaction data frame DF2, which would rollup transactions and performance information to customer id level for each customer. Some metrics that you can create from the detail transactions table DF could be recency of visits, frequency of visit, average purchase amount, recency of conversions etc.., so you would have customer id's that did not buy anything over the time period and customer that bought at least once over the time window.
- join the first table and the rolled up data by customer id to have all features and label (buyer,non buyer) given an appropriate time window
(2) if you want a model for classification at each timestamp for each customer id then most likely your first data frame contains some sort customer characteristics and demographics that do not change overtime or at least over the chosen time window. In that case you join the two data frames by customer id. Here each customer could be buyer or non buyer depending on the each timestamp