¿Qué tal Python para el análisis de datos?
He estado usando el lenguaje Python durante tres años. Estoy impresionado por su simplicidad, su facilidad de lectura y sus potentes bibliotecas. Me he enamorado profundamente de Python. Sus características de lenguaje Python son extremadamente amigables para las personas. Se puede decir que no es difícil para una persona que no entiende el lenguaje de programación entender el lenguaje Python.
En términos de análisis e interacción de datos, computación exploratoria y visualización de datos, Python tiene sus ventajas sobre herramientas como R, MATLAB, SAS y Stata. En los últimos años, debido al continuo desarrollo de las bibliotecas de Python (como pandas), ha surgido en el campo de la minería de datos. Combinado con su gran fortaleza en la programación general, podemos crear aplicaciones centradas en datos utilizando solo Python.
Dado que Python es un lenguaje interpretado, la mayoría de los lenguajes compilados se ejecutan más rápido que el código Python, y algunos estudiantes desprecian Python por esta razón. Sin embargo, el editor cree que Python es un lenguaje de alto nivel con mayor productividad. El tiempo de los programadores suele ser más valioso que el tiempo de CPU. Por lo tanto, para sopesar los pros y los contras, vale la pena considerar el uso de Python.
La potente potencia informática de Python se basa en sus ricas y potentes bibliotecas:
Numpy
Numerical Python es el paquete básico para la informática científica en Python. Sus funciones:
1. Ndarray de objetos de matriz multidimensional rápido y eficiente.
2. Funciones para realizar cálculos a nivel de elementos en matrices y realizar operaciones matemáticas directamente en matrices.
3. Operaciones de álgebra lineal, transformada de Fourier y generación de números aleatorios.
4. Herramientas para integrar código C, C++ y Fortran en Python.
Además de proporcionar capacidades de procesamiento rápido de matrices para Python, NumPy también tiene otro papel importante en el análisis de datos, es decir, como contenedor para transferir datos entre algoritmos. Para datos numéricos, las matrices NumPy son mucho más eficientes que las estructuras de datos integradas de Python al almacenar y procesar datos. Además, las bibliotecas escritas en lenguajes de bajo nivel como C y Fortran pueden manipular datos directamente en matrices NumPy sin ningún trabajo de copia de datos.
SciPy
Es una colección de paquetes diseñados específicamente para resolver diversas áreas de problemas estándar en informática científica, que incluye principalmente los siguientes paquetes:
1. integrar: Rutinas de integración numérica y solucionador de ecuaciones diferenciales.
2. scipy.linalg: Amplía las rutinas de álgebra lineal y funciones de factorización matricial proporcionadas por numpy.linalg.
3.scipy.optimize: optimizador de funciones (minimizador) y algoritmo de búsqueda de raíces.
4.scipy.signal: herramienta de procesamiento de señales.
5.scipy.sparse: Matriz dispersa y solucionador de sistemas lineales dispersos.
6. scipy.special: un contenedor para SPECFUN (una biblioteca de Fortran que implementa muchas funciones matemáticas de uso común (como la función gamma)).
7. scipy.stats: Distribuciones de probabilidad continuas y discretas estándar (como funciones de densidad, muestreadores, funciones de distribución continua, etc.), varios métodos de prueba estadística y mejores estadísticas descriptivas.
8. scipy.weave: una herramienta que utiliza código C++ en línea para acelerar los cálculos de matrices.
Nota: La combinación orgánica de NumPy y SciPy puede reemplazar completamente las funciones de cálculo de MATLAB (incluida su caja de herramientas de complementos).
SymPy
es una biblioteca de cálculo simbólico matemático para Python, que se puede utilizar para realizar derivación simbólica y cálculo de expresiones matemáticas.
pandas
Proporciona una gran cantidad de estructuras de datos y funciones que nos permiten procesar datos estructurados de forma rápida y sencilla. Pronto descubrirá que es uno de los factores importantes que hacen de Python un entorno de análisis de datos potente y eficiente.
pandas combina las funciones de cálculo de matrices de alto rendimiento de NumPy con las funciones flexibles de procesamiento de datos de hojas de cálculo y bases de datos relacionales (como SQL). Proporciona capacidades de indexación sofisticadas que facilitan remodelar, dividir, agregar y seleccionar subconjuntos de datos.
Para los usuarios que utilizan el lenguaje R para cálculos estadísticos, el nombre DataFrame ciertamente no les resultará desconocido, porque se deriva del objeto data.frame de R. Pero estos dos objetos no son lo mismo. El objeto data.frame de R proporciona solo un subconjunto de la funcionalidad proporcionada por el objeto DataFrame. En otras palabras, la función DataFrame de pandas es más poderosa que la función data.frame de R.
matplotlib
es la biblioteca de Python más popular para trazar gráficos de datos. Fue creado originalmente por John D. Hunter (JDH) y actualmente lo mantiene un gran equipo de desarrolladores. Es fantástico para crear cuadros y gráficos para su publicación. Se integra bien con IPython (que se analizará en breve), proporcionando así un entorno de trazado de datos interactivo muy fácil de usar. El gráfico trazado también es interactivo. Puede utilizar la barra de herramientas en la ventana de dibujo para ampliar un área determinada del gráfico o desplazarse y explorar todo el gráfico.
TVTK
es una biblioteca de visualización de datos tridimensionales de Python. Es una biblioteca de visualización de datos tridimensionales muy poderosa. Proporciona una API de estilo Python y admite atributos Trait. Python es un lenguaje de programación dinámico que no tiene tipos de variables. Esta flexibilidad ayuda a un desarrollo rápido, pero también tiene desventajas. La biblioteca Trait puede agregar funciones de verificación a las propiedades de los objetos, mejorando así la legibilidad del programa y reduciendo el error. tasa.) Matriz NumPy. Esta biblioteca es muy grande, por lo que la empresa desarrolladora proporciona un documento de consulta que los usuarios pueden ejecutar mediante la siguiente declaración:
>>> from enthinkt.tvtk.toolsimport tvtk_doc
>>> tvtk_doc .main()
Scikit-Learn
es una biblioteca de aprendizaje automático basada en Python, construida sobre NumPy, SciPy y matplotlib, para una extracción y análisis de datos simples y eficientes. Su documentación y ejemplos son relativamente completos.
El editor recomienda: Los principiantes utilizan python(x, y), que es un paquete gratuito de desarrollo científico y de ingeniería que proporciona cálculos matemáticos, análisis de datos y visualización. ¡Muy conveniente!
El sitio web oficial: www.pythonxy.com (por alguna razón, no se puede acceder a él en China y es necesario eludirlo)
Dirección de descarga: ftp://ftp.ntua .gr/ pub/devel/pythonxy/ (El editor encontró una dirección en Internet, puede usarse para pruebas personales)
La siguiente imagen muestra la poderosa función de python(x, y).