浅用tensorflow天气预测

1.开发环境

(1)Python3.8

(2)Anaconda3

(3)Tensorflow

(4)Numpy

(5)Pandas

(6)Sklearn

先依次安装好上面的软件和包,其中python3.8和Anaconda3是直接下载安装,如果官方链接比较慢,可以搜下三方的源安装。其中Anaconda3不是必须的,用这个工具是因为确实挺香的。

剩下的3-6都是pip安装的包,注意使用Anaconda3的话就在Anaconda Prompt里使用pip命令,如果是其他集成环境或者原生的python环境,直接就在cmd里使用pip安装。

2、实现代码

复制代码
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
import tensorflow.keras
import warnings
#####################################################
features = pd.read_csv('C:/Inst/20230411/20230411/训练集.csv')
print("数据维度",features.shape)
print('features=')
print(features.head(10))

#####################################################
#删除前7行无效数据
features = features[7:]
#将avg列单独存起来
labels_avg = np.array(features['avg'])
print("数据维度",features.shape)
print('features=')
print(features.head(10))

#####################################################
#特征中去掉无用标签
features = features.drop('high',axis=1)
features = features.drop('low',axis=1)
features = features.drop('avg',axis=1)
print("数据维度",features.shape)
print('features=')
print(features.head(10))

#####################################################
#转换成可以处理的数据格式
features = np.array(features)
#预处理
from sklearn import preprocessing
input_features = preprocessing.StandardScaler().fit_transform(features)
print('input_features=')
print(input_features[0:7])

#####################################################
#构造网络模型
model1 = tf.keras.Sequential()
model1.add(layers.Dense(16))
model1.add(layers.Dense(32))
model1.add(layers.Dense(1))
#对网络进行配置
model1.compile(optimizer=tf.keras.optimizers.SGD(0.001),loss='mean_squared_error')

#####################################################
#训练
model1.fit(input_features, labels_avg, validation_split=0.1, epochs=50, batch_size=64)

#####################################################
#读入待预测数据
tobe_predict = pd.read_csv('C:/Inst/20230411/20230411/验证集.csv')
#去除前7行数据
tobe_predict = tobe_predict[7:]
#vag列先存起来,后面用来比较验证预测的效果
tobe_predict_avg = np.array(tobe_predict['avg'])
#去掉无用的列
tobe_predict = tobe_predict.drop('avg',axis=1)
tobe_predict = tobe_predict.drop('high',axis=1)
tobe_predict = tobe_predict.drop('low',axis=1)

#转换成合适的格式
tobe_predict = np.array(tobe_predict)

print("数据维度",tobe_predict.shape)

#预处理
tobe_predict = preprocessing.StandardScaler().fit_transform(tobe_predict)
print("tobe_predict=",tobe_predict[0:7])


#####################################################
#预测模型结果
predict1 = model1.predict(tobe_predict)
print("预测的平均温度")
print(predict1)

print("实际的平均温度")
print(tobe_predict_avg)
相关推荐
极限实验室3 分钟前
INFINI Labs 产品更新 - Coco AI v0.10 × Easysearch v2.0 联袂上线:UI 全面重构,体验焕然一新
数据库·人工智能·产品
春日见1 小时前
眼在手上外参标定保姆级教学---离线手眼标定(vscode + opencv)
linux·运维·开发语言·人工智能·数码相机·计算机视觉·matlab
SmartBrain1 小时前
对比:Qwen-VL与传统的CNN在图像处理应用
图像处理·人工智能·cnn
全栈独立开发者3 小时前
架构师日记:当点餐系统遇上 AI —— 基于 Spring AI + Pgvector + DeepSeek 的架构设计思路
人工智能
谷歌开发者3 小时前
Web 开发指向标|开发者工具 AI 辅助功能的 5 大实践应用
前端·人工智能
kkai人工智能4 小时前
AI写作:从“废话”到“爆款”
开发语言·人工智能·ai·ai写作
づ安眠丶乐灬8 小时前
计算机视觉中的多视图几何 - 1
人工智能·vscode·计算机视觉
2503_928411568 小时前
项目中的一些问题(补充)
人工智能·python·tensorflow
MarkHD9 小时前
智能体在车联网中的应用 第1天 车联网完全导论:从核心定义到架构全景,构建你的知识坐标系
人工智能·架构