У меня есть данные NETCDF от НАСА Джованни Хлорофилла-а, которые содержат пропущенные значения. Я хочу предсказать эти пропущенные значения на основе линейного предсказания соседних ячеек.
Я прошел учебник, представленный на YouTube (https://www.youtube.com/watch?v=phyB4n0CDWg&t=362s),, который показывает значительное количество деталей, но мои данные имеют разную широтуи измерение долготы, которое вызывает проблему в прогнозе.
library(GpGp)
library(fields)
library(ncdf4)
library(ncdf4.helpers)
data=nc_open("g4.timeAvg.MODISA_L3m_CHL_2018_chlor_a.20180101-20191231.SEASON_JJA.60E_5N_93E_25N.nc")
chl=ncvar_get(data,"MODISA_L3m_CHL_2018_chlor_a")
lon=ncvar_get(data, "lon")
lat=ncvar_get(data, "lat")
chl_dims=c(810,477)
chl_array=array(chl,chl_dims)
image.plot(chl_array)
not_missing = !is.na(chl)
y=chl[not_missing]
locs=cbind(lon,lat)
#Warning message:
In cbind(lon, lat) : number of rows of result is not a multiple of vector length (arg 2)
x=cbind(rep(1,sum(not_missing)),locs)
#Warning message:
In cbind(rep(1, sum(not_missing)), locs) : number of rows of result is not a multiple of vector length (arg 1)
gpfit=fit_model(y=y,locs = locs, X=x, "exponential_sphere")
#Error in fit_model(y = y, locs = locs, X = x, "exponential_sphere") :
length of observation vector y not equal
to the number of locations (rows in locs)