1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- """
- @author: zsc
- @time: 2024/11/18
- @desc: 存量运营平台-行为客户行为挖掘及监控
- """
- import time
- import random
- from collections import defaultdict
- import matplotlib.pyplot as plt
- from data.collector import DataCollector
- from data.processor import DataProcessor
- from analyze import BehaviorAnalyzer
- from analyze import SegmentUsers
- from analyze import DetectAnomalies
- from monitor import Monitor
- from monitor import GenerateReport
- def main():
-
- collector = DataCollector.DataCollector()
- raw_data = collector.collect()
-
- preprocessor = DataProcessor.DataPreprocessor(raw_data)
- processed_data = preprocessor.preprocess()
-
- analyzer = BehaviorAnalyzer.BehaviorAnalyzer(processed_data)
- behavior_data, action_stats, product_stats, channel_stats = analyzer.analyze()
-
- segmenter = SegmentUsers.UserSegmentation(behavior_data)
- user_segments = segmenter.segment()
-
- detector = DetectAnomalies.AnomalyDetector(behavior_data)
- anomalies = detector.detect()
-
- generator = GenerateReport.ReportGenerator(processed_data, anomalies, user_segments, action_stats, product_stats, channel_stats)
- report = generator.generate()
-
- print("Report Summary:")
- print(f"Total Users: {report['total_users']}")
- print(f"Total Actions: {report['total_actions']}")
- print(f"Anomalies: {report['anomalies']}")
- print(f"User Segments: {report['user_segments']}")
-
- monitor = Monitor.RealTimeMonitor(processed_data)
- print("Starting real-time monitoring...")
- monitor.monitor()
- if __name__ == "__main__":
- main()
|