Wednesday, January 8, 2014

USA Drought of 2013: Analysis of High-resolution Rainfall Data Using R

The ongoing drought in California and other parts of Southwestern United States has been reported extensively by newspapers and government sites.

Although rainfall deficit is technically meteorological drought, and drought could be of several other types (such as hydrological, agricultural, etc.), the attempt here is to demonstrate the use of R in the analysis of high resolution rainfall data. Using 4-km rainfall data from the PRISM Climate Group for 1895-2013, the total for 2013 is compared with the long-term and near-term historical averages.

Spatial patterns compare well with those from the Drought Monitor from the University of Nebraska.

The entire code and all the graphics are available on GitHub -

This effort is part of The Rain Project.

Any comments or help appreciated.


Tim Salabim said...

Hey, nice graph there. Yet, I think you should adjust the colouring so that 100% is white, and everything above blue and below red (or similar). As it is now, your distorting the image, as the light blue shading of 75%+ suggests wetter than normal conditions, when in fact they are drier than normal.


Gopi Goteti said...

Thanks Tim! Completely agree. I just revised the graphics with a better color scale.


lfelliott said...

I got the rain_prism code from github. I was running the obtain_data.R source and got an error on line 36. I coerced the right hand side to as.vector to finish running the code. Maybe it's just my setup.

Gopi Goteti said...

Thanks Ifelliott! I have not had the chance to run my code on more than one computer. Also, I use Windows OS. I will try to fix it.

DynamicElement said...

I found this is very interesting! I ran the code smoothly! Great job!

However, I need the data for daily scale, how to modify the code towards getting the daily file in the obtain_data.R file?

Is you are able to, Would you please email to



Gopi Goteti said...

Thanks Ping! I have not worked on the PRISM daily data yet. But when I do I will let you know.