What are the differences between Pandas and NumPy+SciPy in Python?
PythonNumpyScipyPandasPython Problem Overview
They both seem exceedingly similar and I'm curious as to which package would be more beneficial for financial data analysis.
Python Solutions
Solution 1 - Python
pandas provides high level data manipulation tools built on top of NumPy. NumPy by itself is a fairly low-level tool, similar to MATLAB. pandas on the other hand provides rich time series functionality, data alignment, NA-friendly statistics, groupby, merge and join methods, and lots of other conveniences. It has become very popular in recent years in financial applications. I will have a chapter dedicated to financial data analysis using pandas in my upcoming book.
Solution 2 - Python
Numpy is required by pandas (and by virtually all numerical tools for Python). Scipy is not strictly required for pandas but is listed as an "optional dependency". I wouldn't say that pandas is an alternative to Numpy and/or Scipy. Rather, it's an extra tool that provides a more streamlined way of working with numerical and tabular data in Python. You can use pandas data structures but freely draw on Numpy and Scipy functions to manipulate them.
Solution 3 - Python
Pandas offer a great way to manipulate tables, as you can make binning easy (https://stackoverflow.com/questions/16947336/binning-a-dataframe-in-pandas-in-python) and calculate statistics. Other thing that is great in pandas is the Panel class that you can join series of layers with different properties and combine it using groupby function.