Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error in (min(piece, na.rm = TRUE) - head):(max(piece, na.rm = TRUE) #87

Open
cyndyfem opened this issue Dec 9, 2021 · 7 comments
Open

Comments

@cyndyfem
Copy link

cyndyfem commented Dec 9, 2021

Hi,
I tried to bias correct CMIP6 data using era5. I tried using eqm, pqm and qdm. They all returned thesame error. Only ISIMIP3 worked.
Please see the error below.

precipitation

BCC_pr_eqm <- biasCorrection(y = OBS_pr, x = BCC_pr, precipitation = TRUE,

  •                          method = "eqm", wet.threshold = 0.1, window = c(30, 15), cross.val = "kfold",
    
  •                          folds = fold, parallel=T , max.ncores=12, ncores= 16)
    

[2021-12-09 20:48:29] Trying to determine the time zone...
[2021-12-09 20:48:29] Time zone identified and set to GMT
See 'setGridDates.asPOSIXlt' to change the time zone
[2021-12-09 20:48:29] Trying to determine the time zone...
[2021-12-09 20:48:29] Time zone identified and set to GMT
See 'setGridDates.asPOSIXlt' to change the time zone
[2021-12-09 20:48:29] Trying to determine the time zone...
[2021-12-09 20:48:29] Time zone identified and set to GMT
See 'setGridDates.asPOSIXlt' to change the time zone
Validation 1, 5 remaining
[2021-12-09 20:48:30] Argument precipitation is set as TRUE, please ensure that this matches your data.
Error in (min(piece, na.rm = TRUE) - head):(max(piece, na.rm = TRUE) + :
result would be too long a vector
In addition: Warning messages:
1: In array(data = c(as.numeric(yearList[seq(2, length(yearList), 3)]), :
NAs introduced by coercion
2: In array(data = c(as.numeric(yearList[seq(2, length(yearList), 3)]), :
NAs introduced by coercion
3: In min(indDays[indObs]) :
no non-missing arguments to min; returning Inf
4: In max(indDays[indObs]) :
no non-missing arguments to max; returning -Inf

@durutti
Copy link

durutti commented Dec 10, 2021

The error only occurs when the window option is used.
I had a similar error and it was related to the way dates were read in biascorrection.
I solved it by fixing the dates before the data are imported to biascorrection for both y and x
e.g
obs$Dates$start<-as.POSIXct(obs$Dates$start, tz = "GMT", format = "%Y-%m-%d")
obs$Dates$end<-as.POSIXct(obs$Dates$end, tz = "GMT", format = "%Y-%m-%d")

Hopefully this will solve the issue

@cyndyfem
Copy link
Author

Hi,
Thank you for this reply.
Yes, I have done as you suggested. It worked for some methods and did not work for some others. It was a good input. thank you. I should probably remove the window.

@cyndyfem
Copy link
Author

Hi,
I am back!!!
Please, do you know how to write out the bias-corrected output from the climate4R grid to .nc for further processing?
I tried to use the grid2nc function in loadeR.2nc package but it always shut down the R session.
I tried it both on Ubuntu and windows but it is still the same problem. I have, however, reported this on the loadeR.2nc page but I have not gotten a reply yet. Are there alternatives?

Thanks for your assistance.

@durutti
Copy link

durutti commented Dec 16, 2021

grid2nc works fine here on two ubuntu maschines (18.04 and 20.04).
If you could provide some code or the variable you want to save then I could help
as a first step check the dimensions of your bias corrected data and their attributes

cheers

@durutti
Copy link

durutti commented Dec 16, 2021

I think the problem is related to the way you are trying to pass the varAttribute in grid2nc. change it to NULL and see if anything changes.
if you still want that attribute declare it before grid2nc

e.g attr(OBS_H$Variable, "units") <- "mm/day"

@cyndyfem
Copy link
Author

Thank you very much!!!

It worked now!!!

@cyndyfem
Copy link
Author

If you do not mind, maybe we could have some collaborations?
You have solved my problem!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants