繁体   English   中英

Python:对具有大量变量的月度数据进行聚类分析

[英]Python: Cluster analysis on a monthly data with a lot of variables

我希望你们能帮我解决这个问题,因为我觉得这在我之上。 对你们中的一些人来说,这可能很愚蠢,但我迷路了,我来向你们寻求建议。

我是统计、数据分析和大数据的新手。 我刚开始学习,我需要做一个关于流失预测的项目。 是的,这是一项家庭作业,但我希望你能回答我的一些问题。

我将非常感谢逐步提供初学者级别的答案。

基本上,我有一个非常大的数据集(显然)来自蜂窝公司 3 个月的客户活动数据,第 4 个月以搅动或不搅动结束。 每个月都有这些列:

['year',
 'month',
 'user_account_id',
 'user_lifetime',
 'user_intake',
 'user_no_outgoing_activity_in_days',
 'user_account_balance_last',
 'user_spendings',
 'user_has_outgoing_calls',
 'user_has_outgoing_sms',
 'user_use_gprs',
 'user_does_reload',
 'reloads_inactive_days',
 'reloads_count',
 'reloads_sum',
 'calls_outgoing_count',
 'calls_outgoing_spendings',
 'calls_outgoing_duration',
 'calls_outgoing_spendings_max',
 'calls_outgoing_duration_max',
 'calls_outgoing_inactive_days',
 'calls_outgoing_to_onnet_count',
 'calls_outgoing_to_onnet_spendings',
 'calls_outgoing_to_onnet_duration',
 'calls_outgoing_to_onnet_inactive_days',
 'calls_outgoing_to_offnet_count',
 'calls_outgoing_to_offnet_spendings',
 'calls_outgoing_to_offnet_duration',
 'calls_outgoing_to_offnet_inactive_days',
 'calls_outgoing_to_abroad_count',
 'calls_outgoing_to_abroad_spendings',
 'calls_outgoing_to_abroad_duration',
 'calls_outgoing_to_abroad_inactive_days',
 'sms_outgoing_count',
 'sms_outgoing_spendings',
 'sms_outgoing_spendings_max',
 'sms_outgoing_inactive_days',
 'sms_outgoing_to_onnet_count',
 'sms_outgoing_to_onnet_spendings',
 'sms_outgoing_to_onnet_inactive_days',
 'sms_outgoing_to_offnet_count',
 'sms_outgoing_to_offnet_spendings',
 'sms_outgoing_to_offnet_inactive_days',
 'sms_outgoing_to_abroad_count',
 'sms_outgoing_to_abroad_spendings',
 'sms_outgoing_to_abroad_inactive_days',
 'sms_incoming_count',
 'sms_incoming_spendings',
 'sms_incoming_from_abroad_count',
 'sms_incoming_from_abroad_spendings',
 'gprs_session_count',
 'gprs_usage',
 'gprs_spendings',
 'gprs_inactive_days',
 'last_100_reloads_count',
 'last_100_reloads_sum',
 'last_100_calls_outgoing_duration',
 'last_100_calls_outgoing_to_onnet_duration',
 'last_100_calls_outgoing_to_offnet_duration',
 'last_100_calls_outgoing_to_abroad_duration',
 'last_100_sms_outgoing_count',
 'last_100_sms_outgoing_to_onnet_count',
 'last_100_sms_outgoing_to_offnet_count',
 'last_100_sms_outgoing_to_abroad_count',
 'last_100_gprs_usage']

这项作业的最终结果将是 k 均值聚类分析和流失预测模型。

我对这个数据集最头疼的是:

如何对包含大部分这些变量的月度数据进行聚类分析? 我试图寻找一个例子,但我找到了一个关于每月分析一个变量或每个月分析多个变量的例子。

我正在使用 Python 和 Spark。

我想只要我知道如何处理几个月和大量变量,我就可以让它发挥作用。

谢谢,您的帮助将不胜感激!

PS 代码示例会不会太多了?

为什么要在这里使用k-means?

  1. k-means 不会对这些数据做任何有意义的事情。 对缩放和属性类型(例如年、月)过于敏感

  2. 流失预测是一个有监督的问题。 切勿对有监督的问题使用无监督算法。 这意味着您忽略了指导搜索的最有价值的信息。

我已经对这些数据进行了全面研究,但我确实需要有关其出处的信息,如果您能给我任何信息,我会非常高兴。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM