rdtools.soiling.monthly_soiling_rates

rdtools.soiling.monthly_soiling_rates(soiling_interval_summary, min_interval_length=14, max_relative_slope_error=500.0, reps=100000, confidence_level=68.2)

Use Monte Carlo to calculate typical monthly soiling rates. Samples possible soiling rates from soiling rate confidence intervals associated with soiling intervals assuming a uniform distribution. Soiling intervals get samples proportionally to their overlap with each calendar month.

Parameters:
  • soiling_interval_summary (pd.DataFrame) -- DataFrame describing soiling intervals. Typically from soiling_info['soiling_interval_summary'] obtained with rdtools.soiling.soiling_srr() or rdtools.soiling.SRRAnalysis.run() Must have columns soiling_rate_high, soiling_rate_low, soiling_rate, length, valid, start, and end.
  • min_interval_length (int, default 14) -- The minimum number of days a soiling interval must contain to be included in the calculation. Similar to the same parameter in soiling_srr() and SRRAnalysis.run() but with a more conservative default value as a starting point for monthly soiling rate analyses.
  • max_relative_slope_error (float, default 500.0) -- The maximum relative size of the slope confidence interval for an interval to be included in the calculation (percentage).
  • reps (int, default 100000) -- The number of Monte Carlo samples to take for each month.
  • confidence_level (float, default 68.2) -- The size of the confidence interval, as a percentage, to use in determining the upper and lower quantiles reported in the returned DataFrame. (The median is always included in the result.)
Returns:

DataFrame describing monthly soiling rates.

Column Name Description
'month' Integer month, January (1) to December (12)
'soiling_rate_median' The median soiling rate for the month over the entire dataset, in units of day^−1. Negative value indicates soiling is occurring. E.g. a rate of −0.01 indicates 1% soiling loss per day.
'soiling_rate_low' The lower edge of the confidence interval for the monthly soiling rate in units of day^−1
'soiling_rate_high' The upper edge of the confidence interval for the monthly soiling rate in units of day^−1
'interval_count' The number of soiling intervals contributing to the monthly calculation. If only a few intervals contribute, the confidence interval is likely to underestimate the true uncertainty.

Return type:

pd.DataFrame