聚合函数错误:聚合中没有行

问题描述 投票:0回答:0

我是R的新手,我想计算海面温度(SST)的月平均值和年平均值。我在使用聚合函数时遇到错误:“NO ROWS IN AGGREGATE”。我的数据:NetCDF文件,从2004年11月到2022年5月。我搜索过没有聚合的行可能是因为向量的长度不一样,但是在我尝试均衡它之后,结果还是一样。感谢您的帮助。我做了什么:

#extracting time, #converting time to a date, 
#extracting SST, #converting SST into Celcius unit
#creating matrix of time,
coords <- as.matrix(expand.grid(date)) 
#creating matrix of SST
temprtr <- as.matrix(expand.grid(suhu))
#equalizying length of time and SST
maxlength <- max(length(coords), length(temprtr))
length(coords) <- maxlength
length(temprtr) <- maxlength
#creating data frame
nc_df <- data.frame(cbind(coords, temprtr))
#calculating monthly average
monthlymean <- aggregate(nc_df$temprtr[!is.na(nc_df$temprtr)],
                         by = list(date = format(as.Date(nc_df$coords[!is.na(nc_df$temprtr)]),"%Y-%m")), mean, na.rm = TRUE)
RESULTS: Error in aggregate.data.frame(as.data.frame(x), ...) : 
            no rows to aggregate
aggregate-functions netcdf sst
© www.soinside.com 2019 - 2024. All rights reserved.