Невозможно извлечь файл netcdf, используя R. Ошибка в .local (x, ...): массив имеет неверное количество измерений (должно быть 3) - PullRequest
0 голосов
/ 27 августа 2018

Я пытаюсь извлечь файл nc в файл csv, используя растр. В наборе данных 100 переменных, но я хотел бы извлечь скорректированную значительную высоту волны (swh) с соответствующей координацией и временем. Вот ссылка для набора данных https://drive.google.com/open?id=1OhT_l9AlIZXuBBjqsKhY2bbMS7yo5lhA

nc<-nc_open(file.choose()) attributes(nc$var)$names[45] dat <- ncvar_get(nc,attributes(nc$var)$names[45]) nc.brick <- brick(dat)

Однако,

Ошибка в .local (x, ...): массив имеет неверное число измерений (должно быть 3)

Я тоже пытаюсь

v<-nc$var[[45]]
size<-v$varsize
dims<-v$ndims
nt<-size[dims]
lat<-nc$dim$latitude$vals
lon<-nc$dim$longitude$vals

r<-list()
for (i in 45:nt){
start<-rep(45,dims)
start[dims]<-i
count<-size
count[dims]<-45
dt<-ncvar_get(nc,varid='swh',start=start,count=count)
r[i]<-raster(dt)
}

Ошибка в (функция (классы, fdef, mtable): невозможно найти унаследованный метод для функции "растр" для сигнатуры "массив"

Я использую print(nc), чтобы проверить свой набор данных, я понял, что в наборе данных есть 2 измерения, которые являются временем и элементарным показателем измерения. Это причина, по которой я не могу извлечь swh? Как я могу извлечь данные SWH с измерениями времени, широты и долготы? Я ценю любые предложения.

...