当前位置:   article > 正文

LSTM的数据集准备_lstm数据集

lstm数据集

前言

一、遇到的问题:

我一开始是以为将nc文件里面的数据提取出来,然后我直接创建csv文件,设置好行、列将数据导入就行。但是事情并没有那么的简单
1.首先你必须清楚nc文件里面的数据到底是什么?它的结构是怎样的?我怎么去利用?包含的哪些内容,哪些是我要导入的?我的范围又是什么?
2.我一开始是把每一个维度都当成是一个数据,然后导入到我csv文件里面。然后就发现数据量很大,然后我的csv文件是根本打不开的。然后当时我都没意识到,我根本没有弄清楚我的数据集,根本不知道我到底要的是哪部分的东西。
3.我当时是把维度都导进去,但是每个维度的大小是不一样的。像我的经度是41,而维度有51,如果我盲目的导入,那么就会出现数据复制,为了去配合别的数据(从下图可以看到我第一次操作的时候,真的是瞎闹)
在这里插入图片描述
4.处理时间坐标。从上图也可以明确的看到,我的时间也是不是正常的表示方式。
我弄这个时间大概是花了2天的(当然并不是一整天都在弄,就一天花一两三四个小时在这个项目上啊哈哈哈哈)
我当时试了很多办法,并不能把时间表示出来,甚至出现找不到文件的bug
然后我最后用了num2date()函数就成功解决了这个问题。

time1=nc.num2date(time, units=dataset['time'].units)
print(time1)
  • 1
  • 2

5,但是接下来还是有很多很多的问题要解决,比如我的变量有四个维度,那么我怎么写这个代码将这个四个维度输入到一个变量里面,然后导入到csv文件里面。说起来还挺简单的,希望过几天代码实践的时候,不要整我。
6,我的csv文件应该长什么样,我又要怎么把他表示出来
我一开始想的是我的csv文件应该这样表示(图一),但我有六张图片,后面两张图片的变量也有点不一样。如果我们一个变量一个csv文件显然是不现实的。但是我看了一些别的lstm预测,他用的csv文件里面大概长这样(图二),他就很很轻松可以将东西都搞到一起啊,然后我就觉得我这个好麻烦,可能是我还没很会弄吧。然后我又想了一下能不能图三
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、知识了解

1.了解nc文件

nc 文件包含两个主要部分:

dimensions:各个变量维度大小
variables:变量
group:组
在这里插入图片描述
4个维度: longitude(41), latitude(51), expver(2), time(12)
4个变量:‘mwd’, ‘mwp’, ‘swh’, ‘shts’, ‘shww’
我觉得这张图更直观:在这里插入图片描述

2.读入数据

生成csv文件
法一:利用DictReader、DictWriter等对该csv文件读写,并输出示例样式的结果
import csv
import collections
tast = open("instance.csv","w")
studen = ["class","name","gender","score"]
writer = csv.DictWriter(tast,studen)

writer.writeheader()

writer.writerow({"class":"19云3","name":"Li","gender":"python","score":"80"})
writer.writerow({"class":"19云3","name":"Wang","gender":"python","score":"90"})
writer.writerow({"class":"19云3","name":"Zhang","gender":"python","score":"85"})
writer.writerow({"class":"19云3","name":"Wu","gender":"python","score":"100"})
tast.close()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/419886
推荐阅读
相关标签
  

闽ICP备14008679号