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

lstm预测

import numpy as np
import pandas as pd
import tensorflow as tf
import math
import matplotlib.pyplot as plt
from sklearn.preprocessing import MinMaxScaler
from keras.layers import LSTM,Activation,Dense,Dropout# 时间序列数据转换为监督学习的格式
def creatXY(dataset,step):dataX,dataY=[],[]for i in range(len(dataset)-step):a =dataset[i:(i+step),0:dataset.shape[1]]dataX.append(a)b =dataset[i+step,0:dataset.shape[1]]dataY.append(b)return np.array(dataX),np.array(dataY)df = pd.read_csv("output.csv")dataset = np.array(df.iloc[:,0:2])
train_size = int(len(dataset)*0.8)dataset_train = dataset[:train_size,:]
dataset_test = dataset[train_size:,:]# print(dataset_train.shape)# (n,2)
# print(dataset_test.shape)# (n,2)
scaler = MinMaxScaler(feature_range=(0,1))
dataset_train_scaled = scaler.fit_transform(dataset_train)
dataset_test_scaled = scaler.transform(dataset_test)step = 10
trainX,trainY = creatXY(dataset_train_scaled,step)
testX,testY = creatXY(dataset_test_scaled,step)
# #input格式为:[样本数,step数,特征数]
trainX_input = np.reshape(trainX,(len(trainX),step,2))
testX_input = np.reshape(testX,(len(testX),step,2))#
#
model = tf.keras.models.Sequential()
model.add(LSTM(48,return_sequences=True,input_shape=(step,2)))
model.add(LSTM(96,return_sequences=True,input_shape=(step,2)))
model.add(LSTM(48,input_shape=[step,2]))
model.add(Activation('relu'))
model.add(Dense(2))#全连接层
model.compile(loss='mse',optimizer='adam')
model.fit(trainX_input,trainY,batch_size=200,epochs=500)predict_train = model.predict(trainX_input)
predict_test = model.predict(testX_input)result0 = scaler.inverse_transform(predict_train)
result1 = scaler.inverse_transform(predict_test)x0,y0 = result0[:,0],result0[:,1]
x1,y1 = result1[:,0],result1[:,1]
plt.plot(x0,y0,c='r')
plt.plot(x1,y1,c='r')
x = dataset[:,0]
y = dataset[:,1]
plt.plot(x,y)
plt.show()

output.csv:

x,y,thta
0.0,0.0,0.0
0.5,9.5,0.5
1.0,13.4,1.0
1.5,16.4,1.5
2.0,18.9,2.0
2.5,21.1,2.5
3.0,23.0,3.0
3.5,24.9,3.5
4.0,26.5,4.0
4.5,28.1,4.5
5.0,29.6,5.0
5.5,31.0,5.5
6.0,32.3,6.0
6.5,33.6,6.5
7.0,34.8,7.0
7.5,36.0,7.5
8.0,37.1,8.0
8.5,38.2,8.5
9.0,39.2,9.0
9.5,40.2,9.5
10.0,41.2,10.0
10.5,42.2,10.5
11.0,43.1,11.0
11.5,44.0,11.5
12.0,44.9,12.0
12.5,45.8,12.5
13.0,46.6,13.0
13.5,47.4,13.5
14.0,48.2,14.0
14.5,49.0,14.5
15.0,49.7,15.0
15.5,50.5,15.5
16.0,51.2,16.0
16.5,51.9,16.5
17.0,52.6,17.0
17.5,53.3,17.5
18.0,54.0,18.0
18.5,54.7,18.5
19.0,55.3,19.0
19.5,55.9,19.5
20.0,56.6,20.0
20.5,57.2,20.5
21.0,57.8,21.0
21.5,58.4,21.5
22.0,59.0,22.0
22.5,59.5,22.5
23.0,60.1,23.0
23.5,60.6,23.5
24.0,61.2,24.0
24.5,61.7,24.5
25.0,62.2,25.0
25.5,62.8,25.5
26.0,63.3,26.0
26.5,63.8,26.5
27.0,64.3,27.0
27.5,64.8,27.5
28.0,65.2,28.0
28.5,65.7,28.5
29.0,66.2,29.0
29.5,66.6,29.5
30.0,67.1,30.0
30.5,67.5,30.5
31.0,68.0,31.0
31.5,68.4,31.5
32.0,68.8,32.0
32.5,69.2,32.5
33.0,69.6,33.0
33.5,70.1,33.5
34.0,70.5,34.0
34.5,70.9,34.5
35.0,71.2,35.0
35.5,71.6,35.5
36.0,72.0,36.0
36.5,72.4,36.5
37.0,72.7,37.0
37.5,73.1,37.5
38.0,73.5,38.0
38.5,73.8,38.5
39.0,74.2,39.0
39.5,74.5,39.5
40.0,74.8,40.0
40.5,75.2,40.5
41.0,75.5,41.0
41.5,75.8,41.5
42.0,76.1,42.0
42.5,76.4,42.5
43.0,76.8,43.0
43.5,77.1,43.5
44.0,77.4,44.0
44.5,77.7,44.5
45.0,77.9,45.0
45.5,78.2,45.5
46.0,78.5,46.0
46.5,78.8,46.5
47.0,79.1,47.0
47.5,79.3,47.5
48.0,79.6,48.0
48.5,79.9,48.5
49.0,80.1,49.0
49.5,80.4,49.5
50.0,80.6,50.0
50.5,80.9,50.5
51.0,81.1,51.0
51.5,81.3,51.5
52.0,81.6,52.0
52.5,81.8,52.5
53.0,82.0,53.0
53.5,82.3,53.5
54.0,82.5,54.0
54.5,82.7,54.5
55.0,82.9,55.0
55.5,83.1,55.5
56.0,83.3,56.0
56.5,83.5,56.5
57.0,83.7,57.0
57.5,83.9,57.5
58.0,84.1,58.0
58.5,84.3,58.5
59.0,84.5,59.0
59.5,84.7,59.5
60.0,84.9,60.0
60.5,85.0,60.5
61.0,85.2,61.0
61.5,85.4,61.5
62.0,85.5,62.0
62.5,85.7,62.5
63.0,85.9,63.0
63.5,86.0,63.5
64.0,86.2,64.0
64.5,86.3,64.5
65.0,86.5,65.0
65.5,86.6,65.5
66.0,86.7,66.0
66.5,86.9,66.5
67.0,87.0,67.0
67.5,87.1,67.5
68.0,87.3,68.0
68.5,87.4,68.5
69.0,87.5,69.0
69.5,87.6,69.5
70.0,87.7,70.0
70.5,87.9,70.5
71.0,88.0,71.0
71.5,88.1,71.5
72.0,88.2,72.0
72.5,88.3,72.5
73.0,88.4,73.0
73.5,88.5,73.5
74.0,88.6,74.0
74.5,88.7,74.5
75.0,88.7,75.0
75.5,88.8,75.5
76.0,88.9,76.0
76.5,89.0,76.5
77.0,89.1,77.0
77.5,89.1,77.5
78.0,89.2,78.0
78.5,89.3,78.5
79.0,89.3,79.0
79.5,89.4,79.5
80.0,89.4,80.0
80.5,89.5,80.5
81.0,89.5,81.0
81.5,89.6,81.5
82.0,89.6,82.0
82.5,89.7,82.5
83.0,89.7,83.0
83.5,89.8,83.5
84.0,89.8,84.0
84.5,89.8,84.5
85.0,89.9,85.0
85.5,89.9,85.5
86.0,89.9,86.0
86.5,89.9,86.5
87.0,89.9,87.0
87.5,90.0,87.5
88.0,90.0,88.0
88.5,90.0,88.5
89.0,90.0,89.0
89.5,90.0,89.5
90.0,90.0,90.0
90.5,90.0,90.5
91.0,90.0,91.0
91.5,90.0,91.5
92.0,90.0,92.0
92.5,90.0,92.5
93.0,89.9,93.0
93.5,89.9,93.5
94.0,89.9,94.0
94.5,89.9,94.5
95.0,89.9,95.0
95.5,89.8,95.5
96.0,89.8,96.0
96.5,89.8,96.5
97.0,89.7,97.0
97.5,89.7,97.5
98.0,89.6,98.0
98.5,89.6,98.5
99.0,89.5,99.0
99.5,89.5,99.5
100.0,89.4,100.0
100.5,89.4,100.5
101.0,89.3,101.0
101.5,89.3,101.5
102.0,89.2,102.0
102.5,89.1,102.5
103.0,89.1,103.0
103.5,89.0,103.5
104.0,88.9,104.0
104.5,88.8,104.5
105.0,88.7,105.0
105.5,88.7,105.5
106.0,88.6,106.0
106.5,88.5,106.5
107.0,88.4,107.0
107.5,88.3,107.5
108.0,88.2,108.0
108.5,88.1,108.5
109.0,88.0,109.0
109.5,87.9,109.5
110.0,87.7,110.0
110.5,87.6,110.5
111.0,87.5,111.0
111.5,87.4,111.5
112.0,87.3,112.0
112.5,87.1,112.5
113.0,87.0,113.0
113.5,86.9,113.5
114.0,86.7,114.0
114.5,86.6,114.5
115.0,86.5,115.0
115.5,86.3,115.5
116.0,86.2,116.0
116.5,86.0,116.5
117.0,85.9,117.0
117.5,85.7,117.5
118.0,85.5,118.0
118.5,85.4,118.5
119.0,85.2,119.0
119.5,85.0,119.5
120.0,84.9,120.0
120.5,84.7,120.5
121.0,84.5,121.0
121.5,84.3,121.5
122.0,84.1,122.0
122.5,83.9,122.5
123.0,83.7,123.0
123.5,83.5,123.5
124.0,83.3,124.0
124.5,83.1,124.5
125.0,82.9,125.0
125.5,82.7,125.5
126.0,82.5,126.0
126.5,82.3,126.5
127.0,82.0,127.0
127.5,81.8,127.5
128.0,81.6,128.0
128.5,81.3,128.5
129.0,81.1,129.0
129.5,80.9,129.5
130.0,80.6,130.0
130.5,80.4,130.5
131.0,80.1,131.0
131.5,79.9,131.5
132.0,79.6,132.0
132.5,79.3,132.5
133.0,79.1,133.0
133.5,78.8,133.5
134.0,78.5,134.0
134.5,78.2,134.5
135.0,77.9,135.0
135.5,77.7,135.5
136.0,77.4,136.0
136.5,77.1,136.5
137.0,76.8,137.0
137.5,76.4,137.5
138.0,76.1,138.0
138.5,75.8,138.5
139.0,75.5,139.0
139.5,75.2,139.5
140.0,74.8,140.0
140.5,74.5,140.5
141.0,74.2,141.0
141.5,73.8,141.5
142.0,73.5,142.0
142.5,73.1,142.5
143.0,72.7,143.0
143.5,72.4,143.5
144.0,72.0,144.0
144.5,71.6,144.5
145.0,71.2,145.0
145.5,70.9,145.5
146.0,70.5,146.0
146.5,70.1,146.5
147.0,69.6,147.0
147.5,69.2,147.5
148.0,68.8,148.0
148.5,68.4,148.5
149.0,68.0,149.0
149.5,67.5,149.5
150.0,67.1,150.0
150.5,66.6,150.5
151.0,66.2,151.0
151.5,65.7,151.5
152.0,65.2,152.0
152.5,64.8,152.5
153.0,64.3,153.0
153.5,63.8,153.5
154.0,63.3,154.0
154.5,62.8,154.5
155.0,62.2,155.0
155.5,61.7,155.5
156.0,61.2,156.0
156.5,60.6,156.5
157.0,60.1,157.0
157.5,59.5,157.5
158.0,59.0,158.0
158.5,58.4,158.5
159.0,57.8,159.0
159.5,57.2,159.5
160.0,56.6,160.0
160.5,55.9,160.5
161.0,55.3,161.0
161.5,54.7,161.5
162.0,54.0,162.0
162.5,53.3,162.5
163.0,52.6,163.0
163.5,51.9,163.5
164.0,51.2,164.0
164.5,50.5,164.5
165.0,49.7,165.0
165.5,49.0,165.5
166.0,48.2,166.0
166.5,47.4,166.5
167.0,46.6,167.0
167.5,45.8,167.5
168.0,44.9,168.0
168.5,44.0,168.5
169.0,43.1,169.0
169.5,42.2,169.5
170.0,41.2,170.0
170.5,40.2,170.5
171.0,39.2,171.0
171.5,38.2,171.5
172.0,37.1,172.0
172.5,36.0,172.5
173.0,34.8,173.0
173.5,33.6,173.5
174.0,32.3,174.0
174.5,31.0,174.5
175.0,29.6,175.0
175.5,28.1,175.5
176.0,26.5,176.0
176.5,24.9,176.5
177.0,23.0,177.0
177.5,21.1,177.5
178.0,18.9,178.0
178.5,16.4,178.5
179.0,13.4,179.0
179.5,9.5,179.5
180.0,0.0,180.0

相关文章:

lstm预测

import numpy as np import pandas as pd import tensorflow as tf import math import matplotlib.pyplot as plt from sklearn.preprocessing import MinMaxScaler from keras.layers import LSTM,Activation,Dense,Dropout# 时间序列数据转换为监督学习的格式 def creatXY(d…...

《 C++ 点滴漫谈: 二十五 》空指针,隐秘而危险的杀手:程序崩溃的真凶就在你眼前!

摘要 本博客全面解析了 C 中指针与空值的相关知识,从基础概念到现代 C 的改进展开,涵盖了空指针的定义、表示方式、使用场景以及常见注意事项。同时,深入探讨了 nullptr 的引入及智能指针在提升代码安全性和简化内存管理方面的优势。通过实际…...

【AI】探索自然语言处理(NLP):从基础到前沿技术及代码实践

Hi ! 云边有个稻草人-CSDN博客 必须有为成功付出代价的决心,然后想办法付出这个代价。 目录 引言 1. 什么是自然语言处理(NLP)? 2. NLP的基础技术 2.1 词袋模型(Bag-of-Words,BoW&#xff…...

2025年Android开发趋势全景解读

文章目录 一、界面开发:从"手写代码"到"智能拼装"1.1 Jetpack Compose实战进化1.2 淘汰XML布局的三大信号 二、AI融合开发:无需炼丹的普惠智能2.1 设备端AI三大杀手级应用2.2 成本对比:设备端VS云端AI 三、跨平台演进&am…...

C#面试常考随笔11:Dictionary<K, V>、Hashtable的内部实现原理是什么?效率如何?

Dictionary<K, V> 底层数据结构&#xff1a;使用哈希表&#xff08;Hash Table&#xff09;&#xff0c;由一个数组和链表&#xff08;或在.NET Core 2.1 及之后版本中&#xff0c;当链表长度达到一定阈值时转换为红黑树&#xff09;组成。数组中的每个元素称为一个桶&a…...

Linux防火墙基础

一、Linux防火墙的状态机制 1.iptables是可以配置有状态的防火墙&#xff0c;其有状态的特点是能够指定并记住发送或者接收信息包所建立的连接状态&#xff0c;其一共有四种状态&#xff0c;分别为established invalid new related。 established:该信息包已建立连接&#x…...

Qt u盘自动升级软件

Qt u盘自动升级软件 Chapter1 Qt u盘自动升级软件u盘自动升级软件思路&#xff1a;step1. 获取U盘 判断U盘名字是否正确&#xff0c; 升级文件是否存在。step2. 升级step3. 升级界面 Chapter2 Qt 嵌入式设备应用程序&#xff0c;通过U盘升级的一种思路Chapter3 在开发板上运行的…...

【Conda 和 虚拟环境详细指南】

Conda 和 虚拟环境的详细指南 什么是 Conda&#xff1f; Conda 是一个开源的包管理和环境管理系统&#xff0c;支持多种编程语言&#xff08;如Python、R等&#xff09;&#xff0c;最初由Continuum Analytics开发。 主要功能&#xff1a; 包管理&#xff1a;安装、更新、删…...

Python递归函数深度解析:从原理到实战

Python递归函数深度解析&#xff1a;从原理到实战 递归是计算机科学中重要的编程范式&#xff0c;也是算法设计的核心思想之一。本文将通过20实战案例&#xff0c;带你深入理解Python递归函数的精髓&#xff0c;掌握递归算法的实现技巧。 一、递归函数核心原理 1.1 递归三要…...

OpenGL学习笔记(五):Textures 纹理

文章目录 纹理坐标纹理环绕方式纹理过滤——处理纹理分辨率低的情况多级渐远纹理Mipmap——处理纹理分辨率高的情况加载与创建纹理 &#xff08; <stb_image.h> &#xff09;生成纹理应用纹理纹理单元练习1练习2练习3练习4 通过上一篇着色部分的学习&#xff0c;我们可以…...

【TypeScript】基础:数据类型

文章目录 TypeScript一、简介二、类型声明三、数据类型anyunknownnervervoidobjecttupleenumType一些特殊情况 TypeScript 是JavaScript的超集&#xff0c;代码量比JavaScript复杂、繁多&#xff1b;但是结构更清晰 一、简介 为什么需要TypeScript&#xff1f; JavaScript的…...

Notepad++消除生成bak文件

设置(T) ⇒ 首选项... ⇒ 备份 ⇒ 勾选 "禁用" 勾选禁用 就不会再生成bak文件了 notepad怎么修改字符集编码格式为gbk 如图所示...

Android NDK

Android NDK环境 D:\Android SDK\ndk\25.2.9519653 使用clang而不用gcc D:\Android SDK\ndk\25.1.8937393\toolchains\llvm\prebuilt\windows-x86_64\bin\clang --version 查看是否安装成功clang ptrace 在 C 语言中&#xff0c;ptrace 已经被 Linux 内核实现&#xff0…...

内部知识库助力组织智力激发与信息共享实现业绩增长

内容概要 内部知识库是企业知识管理的核心组件&#xff0c;具有不可估量的重要性。通过构建有效的知识库&#xff0c;组织能够将孤立的知识和信息整合成为一个系统性的体&#xff0c;极大提高员工访问和利用这些信息的能力。这不仅简化了决策过程&#xff0c;还通过减少重复劳…...

通过F12收集的信息

按 F12 键打开浏览器的开发者工具&#xff08;DevTools&#xff09;可以获取部分操作系统和中间件信息&#xff0c;但能力有限。以下是具体说明&#xff1a; 一、通过 F12 收集的信息 1. 客户端操作系统信息 - Console 控制台 通过 JavaScript 直接获取客户端操作系统信息&am…...

用Python替代OpenMV IDE显示openmv USB 图像

原理是利用openmv的usb模仿串口&#xff0c;然后用Python代码打开串口接收 能替代openmv ide 跑48帧图像 Python端需要的依赖&#xff1a; 需要的是&#xff1a; from ultralytics import YOLO import cv2 import numpy as np from serial import Serial import time from co…...

c语言:编译和链接(详解)

前言 要将编译和链接&#xff0c;就不得不提及编译器是如何运作的&#xff0c;虽然这部分知识是针对于要创造编译器和创作语言的人所需要清楚的&#xff0c;但作为c语言的学习者也需要了解一下&#xff0c;修炼内功&#xff0c;尤其是对于想学习c的人而言。 编译器的运作过程…...

数据结构【单链表操作大全详解】【c语言版】(只有输入输出为了方便用的c++)

单链表操作的C/C实现详解 在数据结构中&#xff0c;单链表是一种非常基础且重要的数据结构。它由一系列节点组成&#xff0c;每个节点包含数据和指向下一个节点的指针。今天我们就来深入探讨用C/C实现的单链表及其各种操作。 一、单链表的定义 const int N 1e5; //单链表 t…...

leetcode27.删除有序数组中的重复项

目录 问题描述判题标准示例提示 具体思路思路一思路二 代码实现 问题描述 给你一个非严格递增排列的数组nums&#xff0c;请你原地删除重复出现的元素&#xff0c;使每个元素只出现一次&#xff0c;返回删除后数组的新长度。元素的相对顺序应该保持一致 。然后返回nums中唯一元…...

[c语言日寄]越界访问:意外的死循环

【作者主页】siy2333 【专栏介绍】⌈c语言日寄⌋&#xff1a;这是一个专注于C语言刷题的专栏&#xff0c;精选题目&#xff0c;搭配详细题解、拓展算法。从基础语法到复杂算法&#xff0c;题目涉及的知识点全面覆盖&#xff0c;助力你系统提升。无论你是初学者&#xff0c;还是…...

从零构建:基于ESP-01S与WebSocket的Wi-Fi智能开关实战

1. 项目背景与核心价值 想象一下这样的场景&#xff1a;周末躺在沙发上发现客厅灯还亮着&#xff0c;不用起身就能用手机一键关闭&#xff1b;出差时突然想起家里鱼缸的加热棒没关&#xff0c;远程操作就能避免安全隐患。这就是Wi-Fi智能开关的魔力&#xff0c;而今天我们要用…...

电商网站滑块验证码破解:OpenCV图像识别+轨迹模拟方案

一、前言当前主流电商、会员登录、抢购下单、接口风控场景中&#xff0c;滑块拼图验证码已是最常见的人机校验方式。传统简单爬虫直接请求接口极易被拦截&#xff0c;而滑块验证码核心防护逻辑分为两点&#xff1a;一是缺口位置图像匹配校验&#xff0c;二是人为滑动轨迹行为风…...

可穿戴设备电池选型与电源管理实战指南

1. 项目概述&#xff1a;为什么可穿戴设备的电池选型是个技术活 做可穿戴电子项目&#xff0c;无论是智能手环、发光服饰还是互动饰品&#xff0c;最让人头疼的往往不是代码和电路&#xff0c;而是最后那一步&#xff1a; 怎么给它供电 。你可能花了好几天调通了传感器和灯带…...

基于MCP协议连接AI与Postal邮件服务器的自动化实践

1. 项目概述&#xff1a;一个连接Postal与MCP的桥梁最近在折腾一些自动化工作流&#xff0c;发现很多内部系统的数据都通过Postal&#xff08;一个开源的邮件服务器管理平台&#xff09;来流转&#xff0c;而我又想用上新兴的模型上下文协议&#xff08;MCP&#xff09;来让AI助…...

C#实战:利用NModbus4库高效读写西门子PLC浮点数据

1. 为什么选择NModbus4与西门子PLC通信&#xff1f; 在工业自动化领域&#xff0c;西门子PLC作为主流控制器&#xff0c;经常需要与上位机进行数据交换。而Modbus TCP协议因其跨平台性和简单易用的特点&#xff0c;成为连接不同厂商设备的通用方案。我在多个工业数据采集项目中…...

气体放电管实战指南:从关键参数到电路防护的精准匹配

1. 气体放电管&#xff1a;电路防护的"安全气囊" 第一次接触气体放电管时&#xff0c;我就被它简单却巧妙的设计所吸引。这玩意儿就像汽车的安全气囊——平时默默无闻&#xff0c;关键时刻却能救你一命。气体放电管&#xff08;GDT&#xff09;本质上是个陶瓷或玻璃…...

私有化多用户AI代码助手:基于开源LLM的部署与协作实践

1. 项目概述&#xff1a;一个面向多用户的代码助手开源项目最近在逛GitHub的时候&#xff0c;发现了一个挺有意思的项目&#xff0c;叫openclaw-multiuser。光看名字&#xff0c;你可能会有点懵&#xff0c;“openclaw”是啥&#xff1f;“多用户”又是指什么&#xff1f;简单来…...

用STM32F103和AD9833制作一个简易信号源:从电路搭建、驱动编写到波形测试全记录

用STM32F103和AD9833打造高精度信号发生器&#xff1a;硬件设计、固件开发与波形优化全解析 在电子工程和嵌入式开发领域&#xff0c;信号发生器是不可或缺的基础工具。无论是测试滤波器响应、校准传感器&#xff0c;还是验证通信协议&#xff0c;一个稳定可靠的信号源都能显著…...

Minecraft服务器技能管理自动化:mcpskills-cli命令行工具实战指南

1. 项目概述与核心价值最近在折腾一些自动化脚本&#xff0c;特别是涉及到Minecraft服务器管理和技能系统的时候&#xff0c;发现很多操作还是得手动进后台敲命令&#xff0c;或者依赖一些图形化面板&#xff0c;效率上总感觉差了点意思。直到我发现了alibiinformationsuperhig…...

[GESP202512 C++ 三级] 选择题第 8 题 ← unsigned int

【题目描述】 在一个特定的计算机系统中&#xff0c;假如 unsigned int 类型需要占用2个字节的存储空间&#xff08;每个字节有8位&#xff09;&#xff0c;则 unsigned int 可以表示的数据范围是&#xff08; A &#xff09; A. 0 ~ 65535 B. 0 ~ 65536 C. -65536 ~ 655…...