2012-06-18 77 views
134

Ambos parecen excesivamente similar y tengo curiosidad sobre qué paquete sería más beneficioso para el análisis de datos financieros.¿Cuáles son las diferencias entre Pandas y NumPy + SciPy en Python?

+12

A riesgo de ser simplón, he descubierto que la base de NumPy es asombrosa y Pandas toma eso increíble y lo pone a 11. –

+12

es una pena que esta pregunta haya sido cerrada no se basa en ninguna opinión y yo Creo que merece mejores respuestas –

+1

https://www.quora.com/What-are-the-advantages-of-using-Pandas-over-Numpy-for-ML-and-Data-Analysis lo encontró interesante. –

Respuesta

212

De hecho, pandas proporciona herramientas de manipulación de datos de alto nivel creadas sobre NumPy. NumPy en sí mismo es una herramienta de bajo nivel, y será muy similar al uso de MATLAB. pandas, por otro lado, ofrece una rica funcionalidad de series de tiempo, alineación de datos, estadísticas amigables para NA, métodos groupby, merge y join, y muchas otras comodidades. Se ha vuelto muy popular en los últimos años en aplicaciones financieras. Tendré un capítulo dedicado al análisis de datos financieros usando pandas en mi próximo libro.

+142

Deberías haber mencionado que eres el principal autor de pandas. :) El libro en cuestión: http://shop.oreilly.com/product/0636920023784.do – Yktula

+2

¿Sería justo decir que numpy proporciona principalmente arreglos eficientes, mientras que pandas ofrece diccionarios eficientes? (En ambos casos, se limita al tipo de datos coherente en lugar de a la forma libre.) Para mí (ahora estoy empezando a analizarlo ahora), esto me parece la diferencia subyacente: manejo de datos etiquetados (en 1d aka dicts y Tablas 2d aka). Alineación de datos, unión, etc. todos se vuelven * posibles * debido a esto, pero para las personas que no asimilan esa diferencia subyacente, ni siquiera está claro qué significan (por ejemplo, ¿qué es "alineación de datos" de dos matrices numpy?). – Brandyn

+4

Wes is da man. Sólo digo. –

44

Numeración es requerida por pandas (y por prácticamente todas las herramientas numéricas para Python). Scipy no es estrictamente necesario para los pandas, pero figura como una "dependencia opcional". No diría que los pandas son una alternativa a Numpy y/o Scipy. Más bien, es una herramienta adicional que proporciona una forma más simplificada de trabajar con datos numéricos y tabulares en Python. Puedes usar estructuras de datos de pandas pero dibujar libremente en las funciones Numpy y Scipy para manipularlas.

3

Las pandas ofrecen una excelente manera de manipular tablas, ya que puede hacer binning fácil (binning a dataframe in pandas in Python) y calcular estadísticas. Otra cosa que es genial en los pandas es la clase Panel, en la que puedes unir series de capas con diferentes propiedades y combinarlas usando la función groupby.

Cuestiones relacionadas