Как переопределить привязанный к сетке data.frame в r

#r

#r

Вопрос:

У меня есть данные SST с привязкой к сетке из OISST и сохранены в формате Rds. Разрешение составляет 0,25 градуса в широтах.

Я хочу переопределить его до разрешения 1 X 1 градус путем усреднения сеток, которые попадают в поле 1X1 градус.

Доступ к образцу данных можно получить по ссылке, приведенной ниже:

https://drive.google.com/file/d/1zWYUcyD1Q_3Anf_xYSHaA9p6lzmVQ2Mg/view?usp=sharing

………

Из старого архива я попробовал следующий код, который мог бы переопределить lon / lat, но выдает NA для оси времени.

 oisst<- readRDS("~/MHW_scripts/olr_vs_mhw/wc_sst.Rds")

df <- oisst
coordinates(df) <- ~ lon   lat
gridded(df) <- TRUE


data.grid <- expand.grid(lon = seq(70, 76, 1), lat = seq(8, 20, 1))

coordinates(data.grid) <- ~ lon   lat

gridded(data.grid) <- TRUE

tmp <- raster(df, layer = 1)

for (i in 1:3) {
  tmp <- stack(tmp, raster(df, layer = i))
}

df <- tmp

df <- aggregate(df, fact = 4, fun = mean)

coords <- as.matrix(coordinates(df))

df <- data.frame(lon = coords[, 1], lat = coords[, 2],
                 as.data.frame(df))
  

Образец данных вставлен сюда для удобства использования:

 70.125  8.125   1982-01-01  28.3899993896484
70.375  8.125   1982-01-01  28.3700008392334
70.625  8.125   1982-01-01  28.2999992370606
70.875  8.125   1982-01-01  28.2700004577637
71.125  8.125   1982-01-01  28.3700008392334
71.375  8.125   1982-01-01  28.5499992370606
71.625  8.125   1982-01-01  28.7199993133545
71.875  8.125   1982-01-01  28.7700004577637
72.125  8.125   1982-01-01  28.75
70.125  8.375   1982-01-01  28.3899993896484
70.375  8.375   1982-01-01  28.3400001525879
70.625  8.375   1982-01-01  28.2700004577637
70.875  8.375   1982-01-01  28.2600002288818
71.125  8.375   1982-01-01  28.3299999237061
71.375  8.375   1982-01-01  28.5400009155273
71.625  8.375   1982-01-01  28.6800003051758
71.875  8.375   1982-01-01  28.7000007629394
72.125  8.375   1982-01-01  28.6200008392334
70.125  8.625   1982-01-01  28.3299999237061
70.375  8.625   1982-01-01  28.3099994659424
70.625  8.625   1982-01-01  28.2299995422363
70.875  8.625   1982-01-01  28.2000007629394
71.125  8.625   1982-01-01  28.2999992370606
71.375  8.625   1982-01-01  28.4899997711182
71.625  8.625   1982-01-01  28.6100006103516
71.875  8.625   1982-01-01  28.5900001525879
72.125  8.625   1982-01-01  28.4799995422363
70.125  8.875   1982-01-01  28.2999992370606
70.375  8.875   1982-01-01  28.2700004577637
70.625  8.875   1982-01-01  28.2000007629394
70.875  8.875   1982-01-01  28.2000007629394
71.125  8.875   1982-01-01  28.2800006866455
71.375  8.875   1982-01-01  28.4300003051758
71.625  8.875   1982-01-01  28.5200004577637
71.875  8.875   1982-01-01  28.5100002288818
72.125  8.875   1982-01-01  28.3700008392334
70.125  9.125   1982-01-01  28.2199993133545
70.375  9.125   1982-01-01  28.2399997711182
70.625  9.125   1982-01-01  28.2199993133545
70.875  9.125   1982-01-01  28.2099990844727
71.125  9.125   1982-01-01  28.2800006866455
71.375  9.125   1982-01-01  28.3500003814697
71.625  9.125   1982-01-01  28.4599990844727
71.875  9.125   1982-01-01  28.4599990844727
72.125  9.125   1982-01-01  28.3299999237061
70.125  9.375   1982-01-01  28.1499996185303
70.375  9.375   1982-01-01  28.1800003051758
70.625  9.375   1982-01-01  28.2000007629394
70.875  9.375   1982-01-01  28.2299995422363
71.125  9.375   1982-01-01  28.25
71.375  9.375   1982-01-01  28.3299999237061
71.625  9.375   1982-01-01  28.3799991607666
71.875  9.375   1982-01-01  28.3799991607666
72.125  9.375   1982-01-01  28.3400001525879
70.125  9.625   1982-01-01  28.0300006866455
70.375  9.625   1982-01-01  28.0900001525879
70.625  9.625   1982-01-01  28.1299991607666
70.875  9.625   1982-01-01  28.1599998474121
71.125  9.625   1982-01-01  28.2099990844727
71.375  9.625   1982-01-01  28.2600002288818
71.625  9.625   1982-01-01  28.2900009155273
71.875  9.625   1982-01-01  28.2800006866455
72.125  9.625   1982-01-01  28.2800006866455
70.125  9.875   1982-01-01  27.9200000762939
70.375  9.875   1982-01-01  28.0100002288818
70.625  9.875   1982-01-01  28.0400009155273
70.875  9.875   1982-01-01  28.0599994659424
71.125  9.875   1982-01-01  28.1200008392334
71.375  9.875   1982-01-01  28.1700000762939
71.625  9.875   1982-01-01  28.1900005340576
71.875  9.875   1982-01-01  28.1900005340576
72.125  9.875   1982-01-01  28.1700000762939
70.125  10.125  1982-01-01  27.8099994659424
70.375  10.125  1982-01-01  27.8899993896484
70.625  10.125  1982-01-01  27.9200000762939
70.875  10.125  1982-01-01  27.9799995422363
71.125  10.125  1982-01-01  28.0200004577637
71.375  10.125  1982-01-01  28.0699996948242
71.625  10.125  1982-01-01  28.1000003814697
71.875  10.125  1982-01-01  28.1000003814697
72.125  10.125  1982-01-01  28.0699996948242
  

Любая помощь будет высоко оценена.

Комментарии:

1. пожалуйста, предоставьте несколько примеров данных в виде кода, чтобы мы могли показать, как это сделать

2. Спасибо за ответ. К образцу данных можно получить доступ по следующей ссылке на Google Диске: drive.google.com/file/d/1zWYUcyD1Q_3Anf_xYSHaA9p6lzmVQ2Mg /…

3. Вы должны включить образец данных в виде кода.

4. Включает подмножество данных в виде кода в исходном сообщении.

5. Это не код. Это не создает объект R, который мы можем использовать. Например cbind(x=1:3, y=3:5)