Criteria of choosing the methods #25
-
Is there any criteria for choosing only these 5 methods (3 scaling methods + 2 distribution based methods)? There are many other methods as well right? Did you find these 5 methods are the best (as per some recent previous study or so)? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
The beginning and resultsI developed "python-cmethods" and the more efficient command-line tool "BiasAdjustCXX" during my Bachelor's thesis in collaboration with the Alfred Wegener Institute (AWI) in Bremerhaven, Germany. My motivation for developing these methods was to incorporate both scaling- and distribution-based techniques. Scaling-based methods, though elementary, can produce results that are as good as QM, DQM, and QDM in terms of mean values. However, these methods cannot address discrepancies in correlations, as illustrated in my Bachelor's thesis (section 5: Results), which you can find here: https://epic.awi.de/id/eprint/56689/. The software's state at that time was not very mature and, as such, cannot be easily compared to today's status. The truthThere is no rule of thumb when it comes to choosing the appropriate method. The delta method, for example, relies heavily on reference data from the control period and assumes that the difference between modeled and observed data remains constant. On the other hand, the linear and variance scaling procedures are similar but based on differences between the control period data. Simple quantile mapping, however, is limited by the range of values of the adjusted time series, which is bound to the range of values of the modeled data of the control period. This limitation is absent in detrended quantile mapping, which can shift the mean values before and after the adjustment to account for the extreme values, but only if the data can be grouped by "time.month" (so far). For quantile delta mapping, I have not experienced any negative side effects, but I would advise trying different methods and assessing certain indicators, such as RMSE, MBE, correlation, etc., to determine if the results are satisfactory. Good referencesOf course, the scaling-based methods implemented in python-cmethods are only a small portion of the many available bias correction techniques. In python-cmethods, scaling-based methods are described precisely as in the articles by Teutschbein, Claudia and Seibert, Jan (2012) "Bias correction of regional climate model simulations for hydrological climate-change impact studies: Review and evaluation of different methods" (https://doi.org/10.1016/j.jhydrol.2012.05.052) and Beyer, R., Krapp, M., and Manica, A. "An empirical evaluation of bias correction methods for paleoclimate simulations" (https://doi.org/10.5194/cp-16-1493-2020). For the quantile and quantile delta mapping I recommend reading the articles written by Alex J. Cannon and Stephen R. Sobie and Trevor Q. Murdock "Bias Correction of GCM Precipitation by Quantile Mapping: How Well Do Methods Preserve Changes in Quantiles and Extremes?" (https://doi.org/10.1175/JCLI-D-14-00754.1) and Tong, Y., Gao, X., Han, Z. et al. "Bias correction of temperature and precipitation over China for RCM simulations using the QM and QDM methods" Clim Dyn 57, 1425–1443 (2021). (https://doi.org/10.1007/s00382-020-05447-4) Weak points and a more efficient toolHowever, during my work, I observed that scaling based on long-term monthly mean values results in unrealistic transitions in these values over time. This is because each month is scaled with a different value, so the scaling of January has nothing to do with the scaling of February, resulting in partial jumps. To address this weakness, BiasAdjustCXX utilizes a different scaling value for each day, which is calculated based on the 31 surrounding days over all available years. Unfortunately, this feature is not implemented in python-cmethods since Python calculations can be a challenge, especially when it comes to many iterations. You can find a comparison of the speed of python-cmethods, xclim, and BiasAdjustCXX here: https://github.com/btschwertfeger/BiasAdjustCXX-Performance-Test/blob/master/index.ipynb. |
Beta Was this translation helpful? Give feedback.
The beginning and results
I developed "python-cmethods" and the more efficient command-line tool "BiasAdjustCXX" during my Bachelor's thesis in collaboration with the Alfred Wegener Institute (AWI) in Bremerhaven, Germany. My motivation for developing these methods was to incorporate both scaling- and distribution-based techniques. Scaling-based methods, though elementary, can produce results that are as good as QM, DQM, and QDM in terms of mean val…