A rough ontology of California's drought-inspired water usage data
As part of his drought executive order, the Governor instructed the State Water Resources Control Board to "request by June 15  an update from urban water agencies on their actions to reduce water usage and the effectiveness of these efforts."
This Water Board has collected water usage data from urban utilities and conservation responses under the following categories (verbatim from the official state data available here):
- Supplier Name
- Stage Invoked
- Mandatory Restrictions
- Reporting Month
- Total Monthly Potable Water Production 2014
- Total Monthly Potable Water Production 2013
- Total Population Served
- REPORTED Residential Gallons-per-Capita-Day (R-GPCD) (starting in September 2014)
- Optional - Enforcement Actions
- Optional - Implementation
- Optional - Recycled Water
- Recycled Water Units
- CALCULATED Production Monthly Gallons Month 2014
- CALCULATED Production Monthly Gallons Month 2013
- CALCULATED R-GPCD 2014 (Values calculated by Water Board staff using methodology available at http://www.waterboards.ca.gov/waterrights/water_issues/programs/drought/docs/ws_tools/guidance_estimate_res_gpcd.pdf)
- CALCULATED R-GPCD 2013 (Values calculated by Water Board staff using methodology available at http://www.waterboards.ca.gov/waterrights/water_issues/programs/drought/docs/ws_tools/guidance_estimate_res_gpcd.pdf)
- % Residential Use
- Hydrologic Region
Frustratingly, many of the actions beyond mandatory restrictions aren't available in a computationally meaningful format, which makes it difficult to evaluate the "effectiveness of their effort" to conserve water per Governor Brown's instructions. Consider the unique responses in the "stage invoked" field in the data provided:
In : waterData['Stage Invoked'].unique() Out: array(['Moderate', 'Severly Restricted', 'Severely Restricted', 'Severely Restricted ', 'Stage 1', 'Permanent Restrictions Only', 'Stage 1 Shortage', 'Imminent Shortage', 'Imminent Water Supply Shortage', 'Immanent Shortage', '3', '1', 'stage 1', 'Level 2', 'Stage 2-Water Shortage Emergency Warning', 'Stage 2 - Water Shortage Emergency Warning', 'Stage 2', 'Stage 3', 'Stage 3 Water Warningate',and many more], dtype=object)
Bit of a ball of wax, eh? Unfortunately the SWRCB doesn't provide a definition of stages 1,2,3,4,5 actions (maybe these phrases are unique to each agency?). As a result, the analysis of conservation actions in the official SWRCB presentation and the Association of California Water Agencies' drought conservation action map focus simply on mandatory water restrictions yes or no, which fails to capture the above nuance and other actions such as rate structure changes.
I put together a quick histogram comparing December 2013 and 2014 gallons per capita per day (GPCD) usage across water utilities that imposed mandatory restrictions and those that did not. The mean usage decreased 12.8 GPCD from 2013 to 2014 for utilities without mandatory restrictions and 23.4 GPCD for utilities with mandatory restrictions.
This obviously is NOT a complete analysis (ignoring for instance a longer historical usage timeline) but is intended to illustrate what's possible with the current data to showcase the need for making other information the Water Board is collecting more accessible.
[Hit play with this data for better, full size viewing]
The "enforcement actions" field offers tantalizingly rich information on conservation steps to better answer the Governor's call but (so far as I am aware) no one has taken the step of standardizing that information into categories meaningful for evaluation. Consider the following example response from the Monte Vista Water District:
Water is a complex issue and actions need a lot of local context. That said, why not report what type of water rate structure a utility uses (such as a flat or tiered volumetric or a water budget)? Further why not note any rate structure changes and the "typical" rate paid by a 200ccf single family home?
The California Public Utilities Commission collects rate data from private water companies but note the data is formatted in pdf -- and one for each utility no less! Making analysts dig through dozens of pdf to get simple data points isn't a good use of public resources. Further there's still the question of public water utilities, which serve the bulk of California's cities.
In addition, several utilities mention using "apps" to communicate conservation messages to the public. Why not have those listed clearly? Sure it's possible to do some text parsing but this could easily be broken out as a specific category. For what it's worth, here's what a simple text parse of "app" in the "Enforcement Actions" field returns:
In : appList =  for action in waterData['Optional - Enforcement Actions']: if "app" in str(action): addAgency = waterData['Supplier Name'][waterData['Optional - Enforcement Actions'] == action].values if addAgency not in appList: appList.append( addAgency ) for city in appList: print city Out : Santa Rosa City of Yuba City City of Camarillo City of Rancho California Water District Oceanside City of San Diego City of Exeter City of San Bernardino City of Sacramento City of Moulton Niguel Water District South Coast Water District Las Virgenes Municipal Water District Valley County Water District Padre Dam Municipal Water District Pasadena City of
There's a big opportunity to make this data more useful to California's water community in the ongoing Urban Water Management Planning process. The 2010 reports are available publicly on the Department of Water Resources webpage and contain a wealth of information but are only available as pdfs.
Why not take that effort to the next level and take a quantum leap in how California's water utilities manage their data?