SciPy is a Python library used for scientific computing and statistical analysis. It was created by Travis Oliphant, Eric Jones, and Pearu Peterson in 2001 as part of the effort to create a complete scientific computing environment in Python. This environment is known as the SciPy stack, and includes NumPy, matplotlib, and pandas.
SciPy is most commonly used in academic fields such as earth science and astronomy, but data scientists might find its linear algebra module useful.
Although SciPy and NumPy are sometimes referred to interchangeably, they're not the same. SciPy is a set of numerical operations built on top of NumPy's
In addition to the library and stack of tools, SciPy also refers to the SciPy community and a group of conferences dedicated to scientific computing in Python—such as SciPy or EuroSciPy.
- Statistical analysis made easy in Python with SciPy and pandas DataFrames (Randy Olson) - This will give you a good idea of when to switch over from pandas to SciPy for statistical analysis. While Pandas covers some basic calculations, SciPy is better suited for more complicated tasks, such as confirming if distributions are significantly different, calculating confidence intervals, and comparing multiple datasets.
- SciPy: High-Level Scientific Computing (Adrien Chauve, et al.) - A thorough list of SciPy modules with code examples. Not too much in terms of helpful commentary along the way, but a great reference.
- SciPy Snippets (The Glowing Python) - A collection of useful tidbits on tasks you can complete with SciPy, such as distribution fitting and interpolating a set of points. With sections devoted to NumPy and matplotlib, this blog is also a great resource for Python scientific computing in general.