分析出力を個々のNCDF4ファイルに書き込むためのスクリプトがあります。スクリプトが最初のファイルを書き込んで停止します。私は取得しています エラーがある: - R_nc4_createで分析から複数のNCDF4ファイルを作成する際にループできません
エラー:アクセス許可は拒否されました(作成モードが4096だった) nc_createでエラーが発生しました(ncfname、リスト(tmp_def、tmp_def2)、force_v4 = T):nc_createで エラー!
そこに何かのように見える: -
ncfname<- sprintf('%sA.nc', Listbreak3)
、私はそれを把握することはできません。
私のスクリプトは、はるかに大きな分析の一部です。しかし、利益の一部は以下の通りです。
それがループすることができ、しかし、私はループが
ホープ誰かがループ内で複数のNCDF4ファイル
書き込みNCDF4ファイル #tunits<-"days since 1800-01-01 00:00:00"
#Define dimensions
##################################################################
londim<-ncdim_def("Lon","degrees_east",as.double(Lon))
latdim<-ncdim_def("Lat", "degrees_north",as.double(Lat))
timedim<-ncdim_def("timeset",tunits,as.double(timeset))
#Define variables
##################################################################
fillvalue<-NA
dlname<-"2 meter air temperature"
dlname2<-" 2 meter max air temperature"
tmp_def<-ncvar_def("Y2ts_Stripped","deg_C",
list(londim,latdim,timedim),fillvalue,dlname,prec = "double")
tmp_def2<-ncvar_def("X2ts_Stripped","deg_C",
list(londim,latdim,timedim),fillvalue,dlname2,prec = "double")
ncatt_put(ncout,"Lon","axis","X")
ncatt_put(ncout, "Lat", "axis", "Y")
ncatt_put(ncout, "timeset","axis", "T")
#################################################
title<-c(1:2)
names(title)<-c("jack","jill")
title<-as.data.frame(title)
###############################################
Listbreak<-filelist
#Create Ncdf4 file and put arrays
##################################################################
for (i in 1:length(Listbreak)){
Listbreak2<-do.call(rbind, strsplit(Listbreak, "[[:punct:]]|\\s"))
[,c(1, 2,3)]###Breaking up the file name
Listbreak3<-Listbreak2[,2]
ncfname<- sprintf('%sA.nc', Listbreak3)
ncout<-nc_create(ncfname,list(tmp_def,tmp_def2),force_v4=T)
ncvar_put(ncout,tmp_def,Y2ts_Stripped,start=NA,count = NA)
ncvar_put(ncout,tmp_def2,X2ts_stripped, start= NA,count = NA)
}
# attributes # the 0 designates the attribute as global
###########################################################
ncatt_put(ncout,0,"Make_NCDF4_File",1, prec="int")
ncatt_put(ncout,0,"Maynooth_University",1,prec="short")
ncatt_put(ncout,0,"AR000087828",1, prec="short")
ncatt_put(ncout,0,"description","this is the script to write NCDF4
files")
#Close file and write date to disk
##########################################################
nc_close(ncout)