当前位置: 首页 > news >正文

Python基于Prophet实现时间序列数据趋势周期特征提取项目实战

说明:这是一个机器学习实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取。

1.项目背景

Prophet是Facebook开源的一个用于时间序列预测的库,它主要用于处理具有趋势、季节性和假期效应的时间序列数据。

本项目通过Prophet实现时间序列数据趋势周期特征提取。   

2.数据获取

本次建模数据来源于网络(本项目撰写人整理而成),数据项统计如下:

编号 

变量名称

描述

1

date

日期

2

close

收盘价

数据详情如下(部分展示):

3.数据预处理

3.1 用Pandas工具查看数据

使用Pandas工具的head()方法查看前五行数据:

关键代码:

3.2数据缺失查看

使用Pandas工具的info()方法查看数据信息:

从上图可以看到,总共有2个变量,数据中无缺失值,共6000条数据。

关键代码:  

3.3数据描述性统计

通过Pandas工具的describe()方法来查看数据的平均值、标准差、最小值、分位数、最大值。

关键代码如下:  

4.探索性数据分析

4.1 y变量分布直方图

用Matplotlib工具的hist()方法绘制直方图:

5.特征工程

5.1 获取特征

关键代码如下:

6.构建时间序列模型 

主要使用Prophet实现时间序列数据趋势周期特征提取。  

6.1 构建模型  

编号

模型名称

参数

1

时间序列模型 

daily_seasonality=True

6.2 模型预测

关键代码如下:

7.模型评估

7.1 特征绘图

针对提取的特征进行绘图:

趋势特征绘图:

周度季节性变化特征绘图:

日度季节性特征绘图:

  

7.2 保存特征数据

关键代码如下:

特征数据展示如下:

   

8.结论与展望

综上所述,本文采用了Prophet实现时间序列数据趋势周期特征提取,最终证明了我们提出的模型效果良好。此模型可用于日常产品的分析。 

# 本次机器学习项目实战所需的资料,项目资源如下:# 项目说明:# 获取方式一:# 项目实战合集导航:https://docs.qq.com/sheet/DTVd0Y2NNQUlWcmd6?tab=BB08J2# 获取方式二:链接:https://pan.baidu.com/s/1PSI_sdAbt_4D7QY0pWXFxw 
提取码:vv9v

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Vulnhub靶机:JANGOW_ 1.0.1
  • Java面试必看!知己知彼才能百战百胜,如何做好面试前的准备?
  • 光线追踪(纹理映射)
  • c语言-EasyX库编写的第一个项目-哪都通快递平台
  • 《Advanced RAG》-07-探索 RAG 中表格数据的处理方案
  • CSS对元素的分类
  • 安装glibc+mysql的权限问题
  • Studying-代码随想录训练营day59| dijkstra(堆优化版)精讲、Bellman_ford 算法精讲
  • Linux网络通信
  • 设计测试用例的具体方法
  • 小厂也是厂,3000我也干
  • vue+element 根据父容器动态设置table高度出滚动条
  • 掌握 Linux 信号机制的技巧与策略
  • Java同城达人交友系统源码
  • (五)activiti-modeler 编辑器初步优化
  • SegmentFault for Android 3.0 发布
  • -------------------- 第二讲-------- 第一节------在此给出链表的基本操作
  • [译]如何构建服务器端web组件,为何要构建?
  • ➹使用webpack配置多页面应用(MPA)
  • canvas绘制圆角头像
  • Git 使用集
  • IIS 10 PHP CGI 设置 PHP_INI_SCAN_DIR
  • Java小白进阶笔记(3)-初级面向对象
  • Windows Containers 大冒险: 容器网络
  • 闭包--闭包之tab栏切换(四)
  • 表单中readonly的input等标签,禁止光标进入(focus)的几种方式
  • 不发不行!Netty集成文字图片聊天室外加TCP/IP软硬件通信
  • 测试开发系类之接口自动化测试
  • 测试如何在敏捷团队中工作?
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 简单数学运算程序(不定期更新)
  • 将回调地狱按在地上摩擦的Promise
  • 怎么将电脑中的声音录制成WAV格式
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • ​中南建设2022年半年报“韧”字当头,经营性现金流持续为正​
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • (+3)1.3敏捷宣言与敏捷过程的特点
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (1)常见O(n^2)排序算法解析
  • (done) ROC曲线 和 AUC值 分别是什么?
  • (el-Transfer)操作(不使用 ts):Element-plus 中 Select 组件动态设置 options 值需求的解决过程
  • (第9篇)大数据的的超级应用——数据挖掘-推荐系统
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (免费领源码)Java#ssm#MySQL 创意商城03663-计算机毕业设计项目选题推荐
  • (源码分析)springsecurity认证授权
  • ..回顾17,展望18
  • .gitignore文件---让git自动忽略指定文件
  • .halo勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .net 简单实现MD5
  • .NET3.5下用Lambda简化跨线程访问窗体控件,避免繁复的delegate,Invoke(转)
  • .net6 webapi log4net完整配置使用流程
  • .NetCore 如何动态路由
  • .net项目IIS、VS 附加进程调试