Modelling farmer resilience to rainfall shocks in NSW

This project seeks to understand the the role of weather shocks on livestock farm performance and resilience in the state of New South Wales, Australia. The project is an output of the ARC linkage grant Innovations in Agricultural Greenhouse Gas Management and Policy, where we broadly consider the viability and opportunity costs of carbon farming in NSW. 

The project is utilising the DataLab environment made available from the Australian Bureau of Statistics. In Datalab, we have used BLADE data, which captures business information reported to the Australian Tax Office for all registered ABNs in Australia. We focussed on ABN businesses within NSW with sheep and/or beef operations over a period between 2001 and 2020. 

The modelling of resilience to recognised that:


To understand these relationships, we used dynamic panel models which first isolated the unexplained variation from the input demand functions (expenditure and stocking value) and revenue functions (in a 2SLS framework). The unexplained variation from each model (the residuals) acted as dependent variables in second stage GAMs models, which sought to understand how unexplained variation in input decisions and revenue were related to current and past rainfall events. In the final step, we derived the fitted values from these GAMs models and then reintroduced these fitted values to the input demand functions and revenue functions. More details to come! 


Given the complexity of the results, of which are dependent on stock and input effects and the length and severity of rainfall shocks, we have incorporated all regression parameters into a simple ShinyApp simulation. Access to the Shiny app can be found here. 


In the ShinyApp, you can select the length and severity of rainfall shocks within the five study regions in NSW. The simulation then calculates the expected input and stocking decisions, and revenue outcomes, over a 10 year time period. These results are plotted akin to an impulse response function. Some screenshot examples are provided below.