Boa noite pessoal,
Estou extraindo de um arquivo ncdf os valores de latitude (lat) longitude( lon) e temperatura da superfície da agua do mar( SST), entretanto a longitude (lon) ela está na projeção 0 a 360 graus. Minha pergunta é como faço para converter ela para -180 a 180 graus? Segue o script que estou utilizando juntamente com o link dos dados.
Desde já agradeço a ajuda
Humberto
lon
lat
data
sst
Lon como deveria ser
299.5
10.5
11/30/1981
27.85
-60.000
300.5
10.5
11/30/1981
27.96
-59.500
301.5
10.5
11/30/1981
28.02
-58.500
302.5
10.5
11/30/1981
28.02
-57.500
303.5
10.5
11/30/1981
27.97
-56.500
304.5
10.5
11/30/1981
27.84
-55.500
305.5
10.5
11/30/1981
27.81
-54.500
306.5
10.5
11/30/1981
27.78
-53.500
307.5
10.5
11/30/1981
27.75
-52.500
Link para acesso dos dados https://www.dropbox.com/s/xnab2g365mduykx/SST_81_14.nc?dl=0
Script:
require(ncdf) #'ncdf' versao 1.6.6
require(reshape)
require(chron)
###sst
nc <- open.ncdf("SST_81_14.nc")
nc
lat <- get.var.ncdf(nc, "lat")
lon <- get.var.ncdf(nc, "lon")
tunits <- att.get.ncdf(nc,"time","units")
# print tunits
tunits$value
# criar tempo "real" Times
time<- get.var.ncdf(nc,"time")
Time<-chron(time,origin=c(month=1, day=1, year=1900))
## array da variavel sst
wm <- get.var.ncdf(nc, "sst")
str(wm)
## atribuindo dimnames conforme lon, lat e tempo
dimnames(wm)[[1]] <- as.character(lon)
dimnames(wm)[[2]] <- as.character(lat)
dimnames(wm)[[3]] <- as.character(Time)
str(wm)
## melt para reestruturação dos dados
mwm <- melt(wm)
head(mwm)
_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.