Python libraries and related software¶
Fedora Scientific includes the widely used Python libraries and tools for scientific and numerical computing. Specifically, most of the core components of the SciPy stack (Numpy and Scipy libraries, Matplotlib, Sympy and IPython are included). With the exception of SymPy, you will find that the Python 3 equivalents are also installed.
SciPy¶
The official documentation for the SciPy and Numpy libraries are here. The Python Scientific Lecture notes may be useful too.
You can seek help from the mailing lists for both SciPy and Numpy here.
SymPy¶
SymPy is a library for symbolic math. The official documentation for SymPy is here.
The user mailing list is here.
IPython¶
IPython is an enhanced interactive shell with various features to support rapid interactive computing. The IPython Notebook is a browser based environment which allows you to create rich JSON based documents embedding rich text, numerical calculations and inline graphs. See the IPython homepage to learn more.
The official documentation is here. There are also a number of talks and presentations and videos and screencasts.
The IPython mailing list is here.
Pandas¶
pandas is a Python library mostly useful for data analysis.
The cookbook is a good place to start and the Lessons for New pandas Users look useful too.
You can ask questions on stackoverflow.
Plotting¶
Matplotlib is the most feature-rich Python library for creating publication ready graphs and figures.
The official documentation is here and the example gallery has a large number of examples of creating plots of all kinds using matplotlib.
Parallel and Distributed Computing¶
The Python standard library’s multiprocessing module is useful for parallel programming. Fedora Scientific includes these additional libraries.
The MPI for Python project provides Python bindings to the Message passing interface (MPI). The official documentation is here with the mailing list available here.
Parallel Python is another alternative made available. The official documentation is linked from the homepage. The examples should help you get an idea of what the programs look like and the kind of things you may be able to do. The forum for seeking help is here.
You can also use IPython for parallel computing, including using MPI with IPython. See the official documentation here.
Other libraries¶
The NetworkX library allows you to play with complex networks. Simple use cases include learning and teaching graphs. The official documentation is here and the project’s mailing list is here.
Note
networkx is not included in Fedora 28, you can however install it
using: dnf -y install python*-networkx
.
Sage¶
Note
sagemath is not included in Fedora 28, you can however install it
using: dnf -y install sagemath
.
Sage provides an unified interface to “100 open source packages”. The videos here may help you get an overview of what sage is and what it can do for you. The official documentation is here and ways to get help are listed here.