Bildtext får vara max två rader text. Hela texten ska högerjusteras om den bara ska innehålla fotobyline! Photo: B. Christensen/Azote
Software network analysis
What do you get when two harmonizing, but disconnected views finally come together after years of being hidden away? Something rare, something unique, like a unicorn. Well, in this case it’s actually a “pyunicorn.”
The Python pyunicorn software package, or the Pythonic unified complex network and recurrence analysis toolbox, was born from complex network theory and non-linear time series analysis; two separate but complementary perspectives on the structure and dynamics of complex systems.
A complex network is a network that could be social, biological or technological in nature, and connections made within the system are somewhere between systematic and random. Non-linear time series analyses look at how unpredictable systems operate. Considering these two perspectives together creates a mutual benefit, where theories from both disciplines can be simultaneously analyzed and applied.
"This software package allows for applying and combining modern methods of data analysis and modeling, uniting these two perspectives," explains centre planetary boundaries post-doctoral researcher and lead author of the pyunicorn applications paper in CHAOS, Jonathan Donges. Donges was also leader of the team that has developed the pyunicorn software since 2008.
How it works
Pyunicorn provides various tools, such as complex network analysis, functional networks, network-based time series analysis, and surrogate time series. In addition, it offers five sub-packages that build on the core package, and allow for different types of analyses to be carried out.
The pyunicorn tool works by transforming a time series into a network, which then allows you to learn something about the times series from the created network.
“The pyunicorn package is particularly useful for big time series datasets, and can generate new syntheses of existing concepts and methods from a variety of fields. This can help lead to novel methodological developments and fruitful applications in the future"
Jonathan Donges, lead author
More simply put, pyunicorn is a method that can analyze large amounts of data and reveal large-scale trends, like species’ responses to climatic changes and tipping points.
The pyunicorn software can give new perspectives to old problems, and can allow for more detailed analyses compared to past tools, but the authors underline that the research must still be theoretically well-grounded and motivated by relevant, well-posed research questions.
Once the research questions and theory are established, the rest becomes a matter of running the data. Donges and colleagues have made that easy, by making pyunicorn open access – a different approach from previous similar programs made only available to researchers at a cost.
“It is written in the Python programming language, making it widely accessible and conveniently applicable across a number of different disciplines; from neuroscience to climatology, economics, and other disciplines,” Donges adds.
Monsoons to markets: Multidisciplinary applications
Say you wanted to study how the Indian Monsoon system, one of the most influential global climatic subsystems affecting a quarter of the world’s population, varies annually. To study this, you would need to consider both geography and time. If you approached this question from a climate network perspective, and applied the pyunicorn software package, you could find out.
Donges and colleagues did exactly that to illustrate the applicability of the new software package. In doing so they showed the influence of Western Disturbances and westerlies on the synchronicity, spatial structure, and seasonal dynamics of extreme rainfall events over the Indian subcontinent and yielded insights into the annual evolution of temperature climate networks over the Indian monsoon domain, and the influence of El Niño–Southern Oscillation on the Indian monsoon system.
If you wanted to examine financial and economic dynamics, the same logic could be applied. For example, researchers could use the pyunicorn software to study financial crises, and even more importantly early warning signs. Understanding financial crises with this method could help investors detect when it is best to relocate their funds, and governments to know when to have a policy intervention to soften the impacts of the crises.
While pyunicorn may not possess magical powers like its namesake mythical creature, the Jonathan Donges and his colleagues hope that it being open source, and the number of disciplines and applications accessible to it, will make it pretty enchanted on its own.
Donges, J.F., Heitzig, J., Beronov, B., Wiedermann, M., Runge, J., Feng, Q.Y., Tupikina, L., Stolbova, V., Donner, R.V., Marwan, N. and Dijkstra, H.A., 2015. Unified functional network and nonlinear time series analysis for complex systems science: The pyunicorn package. Chaos: An Interdisciplinary Journal of Nonlinear Science, 25(11), p.113101.
Jonathan Donges is a postdoctoral researcher holding a joint position at the centre (Stordalen Scholar) and the Potsdam Institute for Climate Impact Research, Germany.
Research news | 2018-11-16
New report projects area of habitat larger than New Zealand could be lost to urbanization over next 20 years
Research news | 2018-11-15
The fifth in a series of seven "deep dives" looking into the connections between resilience and development
Research news | 2018-11-13
First assessment of planetary boundaries for antibiotic and pesticide resistance shows several are already crossed
Educational news | 2018-11-13
Centre partners with other insitutions at Stockholm University to host a PhD/postdoc course in global and environmental governace
Research news | 2018-11-09
The perception of cognition and other related terms easily get misunderstood in scientific processes, leading to frustration, communication breakdown and a collaboration impasse
Research news | 2018-11-08
The fourth in a series of seven "deep dives" looking into the connections between resilience and development