从NetCDF数据提取后,如何合并RasterBrick列并重命名? [R语言]

时间:2019-01-02 12:37:06

标签: r extract netcdf lubridate r-raster

每个人我都是R的初学者,因此以下代码或问题可能会误解R函数。希望你们不介意。

  1. 我从ECMWF获得了数百个ERA中期每日降水数据。

  2. 每个NetCDF月度文件每天包含两次降水,并按经度和纬度提取它们。

  3. 最终转换为CSV文件,但其本身存储(12:00; 00:00)两列用于 当天降雨。

Image of output CSV

理想情况下,我想获得全年或一个月的单日降雨量。但是,不知道如何在R中做到这一点。

  • 第一季度:是否有任何库或函数支持合并列名称并保留 相同的日期?

  • 第二季度:但是,我不确定lubridate库能否完成,否则我不确定 更好。

-----谢谢您的回答---------

如果有人要查看NetCDF文件和.csv文件,则可以从我的Google驱动程序获取: https://drive.google.com/drive/folders/1ogQp_-MlvmJCDmzm38dXHbUmWAM6hi1v?usp=sharing P.S在Google云端硬盘中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")

0 个答案:

没有答案