Как объединить столбцы RasterBrick и переименовать после извлечения из данных NetCDF? [R язык] - PullRequest
0 голосов
/ 02 января 2019

каждый Я просто новичок в R, поэтому следующий код или вопрос может неправильно понять функцию R. Надеюсь, вы, ребята, не против.

  1. Я получил сотни данных о суточных осадках ERA от ECMWF.

  2. Каждый ежемесячный файл NetCDF содержит два раза в день осадков и извлекает их по долготе и широте.

  3. Наконец, преобразуйте в файл CSV, но сохраните (12:00; 00: 00) два столбца для в те же дни количество осадков.

Изображение вывода CSV

В идеале я хотел бы получить однодневные осадки за целый год или месяц. Но не знаю, как это сделать в R.

  • Q1: Существует ли какая-либо библиотека или функция, поддерживающая объединение имен столбцов и сохранение те же даты?

  • Q2: Однако я не уверен, что библиотека lubridate сможет выполнить эту задачу, иначе лучше.

----- Спасибо за любые ответы ---------

Если кто-то хочет просмотреть файл NetCDF и файл .csv, вы можете получить его из моего драйвера Google: https://drive.google.com/drive/folders/1ogQp_-MlvmJCDmzm38dXHbUmWAM6hi1v?usp=sharing P.S В Google Drive SumMonth.csv - это результат извлечения

R код:

library(raster)
library(ncdf4)
f <- list.files("C:/Users/asus/Downloads/extract",
                pattern = "*.nc", full.names = TRUE)
ncloop <-lapply(f,nc_open)# Read whold folder nc.file

brick <-lapply(f,brick,varname = "tp")

brick2 <-stack(brick)# Combine all month

dim(brick2)#check dim right

##### input location file with Lon&Lat

pointCoordinates <- read.table("C:/Users/asus/Downloads/pointFile.csv",

header = TRUE, sep = ",",stringsAsFactors=FALSE)

coordinates(pointCoordinates) <- ~Long + Lat # Assign XY for extract

rasValue=extract(brick2, pointCoordinates)#extract

combinePointValue=cbind(pointCoordinates,rasValue)#construct database 

## Outout as csv
cc <- as.data.frame(combinePointValue)

write.csv(cc,file ="SumMonth.csv")
...