我正在处理ML问题,其中有一个用户日志文件数据集,其中包含各种交互信息和一个带有总体满意度结果的标签。目标是构建一个预测器(以H2O形式),该预测器可以根据平台上的用户使用模式来检测用户的总体满意度。
我在确定建立模型的最佳方法时遇到了麻烦。数据似乎适合时间序列分析,但结果是绝对的。我假设为了创建此模型,我需要考虑每个用户的时间,为每个用户聚合并生成摘要功能,但是用户交互的长度和位置会有所不同。
聚集此类数据,生成这些功能并最终在python中对数据建模的最佳方法是什么?
样本数据:
data = [{'User_ID': '12345', 'Type': 'HomePage', 'Item': 'LoginSelection', 'ExtendedInfo':'', 'EventTime': '2017-02-10 14:44:54', 'Outcome':'Satisfied'},
{'User_ID': '12345', 'Type': 'HomePage', 'Item': 'HelpSelection', 'ExtendedInfo':'', 'EventTime': '2017-02-10 14:45:57', 'Outcome':'Satisfied'},
{'User_ID': '12345', 'Type': 'Help', 'Item': 'Dropdown', 'ExtendedInfo':'', 'EventTime': '2017-02-10 14:46:54', 'Outcome':'Satisfied'},
{'User_ID': '12345', 'Type': 'Help', 'Item': 'Dropdown', 'ExtendedInfo':'', 'EventTime': '2017-02-10 14:47:10', 'Outcome':'Satisfied'},
{'User_ID': '12345', 'Type': 'Help', 'Item': 'HelpSearch', 'ExtendedInfo':'where to pay my bills', 'EventTime': '2017-02-10 14:47:35', 'Outcome':'Satisfied'},
{'User_ID': '12345', 'Type': 'Help', 'Item': 'HelpSearch', 'ExtendedInfo':'late payment options', 'EventTime': '2017-02-10 14:49:15', 'Outcome':'Satisfied'},
{'User_ID': '12888', 'Type': 'HomePage', 'Item': 'LoginSelection', 'ExtendedInfo':'', 'EventTime': '2017-02-11 13:24:54', 'Outcome':'Dissatisfied'},
{'User_ID': '12888', 'Type': 'HomePage', 'Item': 'HelpSelection', 'ExtendedInfo':'', 'EventTime': '2017-02-11 13:25:57', 'Outcome':'Dissatisfied'},
{'User_ID': '12888', 'Type': 'Help', 'Item': 'Dropdown', 'ExtendedInfo':'', 'EventTime': '2017-02-10 13:26:51', 'Outcome':'Dissatisfied'},
{'User_ID': '12888', 'Type': 'Help', 'Item': 'Dropdown', 'ExtendedInfo':'', 'EventTime': '2017-02-10 13:27:11', 'Outcome':'Dissatisfied'},
{'User_ID': '12888', 'Type': 'Help', 'Item': 'HelpSearch', 'ExtendedInfo':'some more search test', 'EventTime': '2017-02-11 13:27:35', 'Outcome':'Dissatisfied'},
{'User_ID': '12888', 'Type': 'Help', 'Item': 'HelpSearch', 'ExtendedInfo':'just an example', 'EventTime': '2017-02-11 13:59:15', 'Outcome':'Dissatisfied'}]
example_df = pd.DataFrame(data, columns=['User_ID', 'Type', 'Item', 'ExtendedInfo', 'EventTime', 'Outcome'])