我对python和stackoverflow还比较陌生。我第一次需要帮助和处理netCDF文件。当天早些时候,我使用arcmaps制作了一个.txt文件,然后使用Notepad++“Begin/End Select”在文本文件中指定日期范围,然后在“海洋数据视图”中绘制了之前的数据
我想学习如何通过python完成这一切。我学习了python的基础知识,并且知道非常少的科学编码
以上是什么样的文本文件应该像除了我不需要长和纬度
以下是我想要的标题: 日期时间压力[Dbar]温度[deg c]盐度[PSU] 密度[Kg m^-3]
我很难把所有的东西都组装起来
1)我想把它转换成日期时间
string ctd_time:comment = "Time in seconds since 2000-01-01.";
ctd_time:precision = 0;
string ctd_time:coordinates = "time lat lon pressure";
string ctd_time:long_name = "Time, UTC";
string ctd_time:units = "seconds since 2000-01-01";
ctd_time:_ChunkSizes = 504U;
2)我想特别提取2014年9月12日至2014年10月12日之间的特定数据范围
3)生成outfile.txt或csv或任何分隔符
稍后我要分析整个文件。该文件有40k个条目,因为它以秒为单位。下面是步骤4-6是我想做的,但还没有深入研究
4)我想将秒数转换为小时平均数
5)对这些档案进行基本统计
完美世界我很想搞清楚,在平均每小时的数据之前,要做一个统计测试,剔除异常值
6)绘制压力与温度的关系图,并在点之间进行插值,以获得具有这些https://matplotlib.org/cmocean/颜色贴图之一的平滑图形
或多或少,我也想用它来更好地开发python技能。我想学习和在NetCDF文件的效率
谢谢
import datetime as dt
import netCDF4
import pandas as pd
ooi = netCDF4.Dataset("filepath", 'r')
ooi.variables.keys()
time_var = ooi.variables['ingestion_timestamp'][:]
pressure = ooi.variables['ctdpf_ckl_seawater_pressure'][:]
temperature = ooi.variables['ctdpf_ckl_seawater_temperature'][:]
salinity = ooi.variables['practical_salinity'][:]
density = ooi.variables['density'][:]
吼叫是我想做的。指定时间并输出文件
start = dt.datetime(2014,9,14,1,0,0)
stop = dt.datetime(2014,10,14,1,0,0)
istart = netCDF4.date2index(start,time_var,select='exact')
istop = netCDF4.date2index(stop,time_var,select='exact')
to_csv('20140912T000003_20141012T000003.csv',index=True, header=True)
然后用出水口运行压力、温度、盐度、密度进行统计分析,找出基本stdv的最小值和最大值
目前没有回答
相关问题 更多 >
编程相关推荐