每个人我都是R的初学者,因此以下代码或问题可能会误解R函数。希望你们不介意。
我从ECMWF获得了数百个ERA中期每日降水数据。
每个NetCDF月度文件每天包含两次降水,并按经度和纬度提取它们。
最终转换为CSV文件,但其本身存储(12:00; 00:00)两列用于 当天降雨。
理想情况下,我想获得全年或一个月的单日降雨量。但是,不知道如何在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")