Я довольно новичок в python и stackoverflow. Мне нужна помощь и работа с файлами netCDF в первый раз. Ранее в тот же день я использовал arcmaps для создания файла .txt, затем использовал Notepad ++ «Выбор начала / конца», чтобы указать диапазон дат в текстовом файле, а затем отобразил данные ранее в виде данных океана.
Я хотел бы узнать, как сделать все это через Python. Я изучил основы Python и знаю очень минимальное научное кодирование.
https://imgur.com/avWaCW4
выше, как текстовый файл должен выглядеть, кромеМне не нужны длинные и лат
Вот заголовки, которые я хочу: Дата Время Давление [Дбар] Температура [град. С] Соленость [PSU] Плотность [кгм ^ -3]
IЯ испытываю трудности с сортировкой всего вместе
1) Я хочу преобразовать его в Date Time
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) Я хочу специально извлечь определенный диапазон данных между 9/12 /2014 - 10/12/2014
3) создать файл outfile.txt или csv или любой другой разделитель.
Позже я хочу проанализировать весь файл. Файл имеет 40 тыс. Записей, потому что это в секундах. Ниже приведены шаги 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)
Затем с выходным файлом запустите статистический анализ плотности солености давления и температуры и найдите базовые значения: стандартное значение минимальной максимальной скорости