Introducción

La página web (http://argoweb.whoi.edu/argo_database_web/index.html?wmo=6900772&data=true) (en caso de estar caída se puede probar aquí) permite descargar archivos de datos correspondientes a un conjunto de perfiles medidos por una boya flotante que ha realizado un recorrido al norte del archipiélago canario desde finales de 2010 hasta mediados de 2013. Estos datos están en formato NCDF, que es un formato específico que permite archivar también la información espacio-temporal correspondiente a cada observación. La siguiente sintaxis de R permite leer estos archivos:

library(RNetCDF)
argo<-open.nc("datos/6900772_prof.nc")
argo_meta<-open.nc("datos/6900772_meta.nc")
datos<-read.nc(argo)
metaDatos<-read.nc(argo_meta)
posicion=data.frame(with(datos,cbind(LATITUDE,LONGITUDE)))
presion=datos$PRES
temp=datos$TEMP
salin=datos$PSAL
salin[salin<=0]=NA
salin[salin>37]=NA
fecha=datos$JULD
fechaOrigen=datos$REFERENCE_DATE_TIME
fechaOrigen=as.Date(paste(substr(fechaOrigen,1,4),substr(fechaOrigen,5,6),substr(fechaOrigen,7,8),sep="-"))
fecha=as.Date(fecha,origin=fechaOrigen)
library(lubridate)
mes=month(fecha)
año=year(fecha)

Como resultado de la aplicación de la sintaxis anterior, disponemos de las siguientes variables:

 

 

Cuestiones a resolver.

  1. Representa los puntos de observación de la boya Argos sobre un mapa (sugerencia: descarga el paquete de R rworldmap, y consulta la web (http://www.r-bloggers.com/maps-in-r-plotting-data-points-on-a-map/))

  2. Utiliza R para dibujar los gráficos de contorno de salinidad y temperatura que se muestran en la web (http://www.oceanografia.es/argo/datos/ArgoEsGraficos/6900772.html). Para ello necesitará emplear la función filled.contour

  3. Utiliza R para representar los perfiles de salinidad y temperatura que se muestran en la web (http://www.oceanografia.es/argo/datos/ArgoEsGraficos/6900772.html), así como los gráficos de contorno de temperatura frente a salinidad.

  4. Construye un modelo de regresión para predecir la salinidad a partir de la presión, para presiones inferiores a 500 dBars. ¿Cambia la pendiente de dicha regresión según el mes del año? ¿Mejora el ajuste de la regresión si se incluye la temperatura en el modelo como variable explicativa?

  5. Promedia, para cada posición de la boya, los valores de las 10 temperaturas y salinidades más superficiales. Puedes hacerlo mediante la sintaxis:

tempSup=apply(temp[1:10,],2,mean)
salinSup=apply(salin[1:10,],2,mean,na.rm=TRUE)

Construye el modelo de regresión para predecir la temperatura superficial a partir de la latitud, el mes de año y la salinidad superficial. ¿Permiten estas variables predecir la temperatura? ¿Son necesarias las tres variables para hacer la predicción o puedes prescindir de alguna(s)? Comprueba que se dan las condiciones para el ajuste de la regresión, eliminando valores anómalos en caso de ser necesario.

  1. Repite el ejercicio anterior, pero prediciendo la salinidad a partir de la latitud, la longitud, el mes del año y la temperatura superficial.

  2. Construye la variable latAgrup con el valor “norte” para aquellos datos que se miden al norte del paralelo 31 y “sur” para los que se miden al sur de dicho paralelo. Asimismo, construye la variable estacion con los valores “primavera” para observaciones durante los meses 3-5, “verano” para 6-8, “otoño” para 9-11 e “invierno” para el resto. Por último, promedia, para cada localización, las temperaturas comprendidas entre las filas 48 y 55 del registro (correspondientes aproximadamente a a presiones entre 850 y 1200 dBars)· Determina si existen diferencias significativas en los valores medios de temperatura asociadas a las variables latAgrup y estacion.

  3. Repite el apartado anterior incluyendo además el efecto de la presión.