A la hora de crear una matriz de NumPy es posible definir el tipo de dato mediante la propiedad dtype, evitando de esta forma que este sea deducido a partir de los datos. Aunque inicialmente se pueda pensar en el uso de los tipos primitivos: enteros, reales o cadenas de texto, también es posible emplear estructuras definidas por el usuario. Creando en este último caso lo que se … [Leer más...] acerca de NumPy: ¿Qué es una matriz estructurada de NumPy y cómo trabajar con ellas en Python?
Python
Python es un lenguaje de programación interpretado con una filosofía basada en la legibilidad del código. Un lenguaje que gracias posee un gran ecosistema de librerías para la ciencia de datos. Por lo que es uno de los más populares en la actualidad entre los científicos de datos. Además, es uno de los lenguajes más deseados y adorados por los programadores según las encuestas de Stack Overflow.
Python es un lenguaje de programación interpretado de propósito general que obliga al uso de una sintaxis clara, gracias a la cual el código es altamente legible. Siendo un lenguaje potente y fácil de aprender. Además, permite utilizar múltiples paradigmas de programación. Lo que permite usar desde programación orientada a objetos, pasando por programación imperativa o funcional.
Los paquetes de Python más utilizados por los científicos son:
- NumPy: permite el tratamiento de datos basados en matrices,
- Pandas: ideal para la manipulación de datos heterogéneos mediante objetos DataFrame,
- SciPy: implementa tareas habituales en computación científica,
- Matplotlib: facilita la visualización de datos y scikit-learn creación de modelos de aprendizaje automático.
Las publicaciones de esta sección versan sobre estas librerías y las bases del lenguaje.
Pandas: Convertir una columna en el índice
Los DataFrame de Pandas contienen una propiedad especial que son los índices, unos valores inmutables que se asignan a cada una de las filas del conjunto de datos. Al ser inmutables no es posible cambiar un valor específico, pero sí que es posible modificar todos los índices. En esta entrada vamos a ver cómo se pueden convertir una columna en el índice mediante el uso del … [Leer más...] acerca de Pandas: Convertir una columna en el índice
NumPy: ¿Cómo acceder al i-ésimo elemento de una matriz multidimensional de NumPy?
Una pregunta que me suele hacer de forma habitual los usuarios que comienzan con NumPy es cómo se puede acceder a un elemento en concreto. Pudiendo hacer referencia tanto a un escalar, una columna como una fila. Algo que es relativamente sencillo en cuanto se entiende el funcionamiento de las matrices multidimensionales de NumPy. Así que comprendamos estos objetos para saber … [Leer más...] acerca de NumPy: ¿Cómo acceder al i-ésimo elemento de una matriz multidimensional de NumPy?
Pandas: Conversion de texto a fecha
La librería NumPy de Python define el tipo de dato datetime64 para trabajar con fechas y diferencias entre fechas. Un tipo con el que es realmente fácil trabajar con este tipo de información tan complejo, haciendo fáciles operaciones que de otra manera serían complicadas. Por lo que es el tipo de dato que se suele usar en los DataFrames de Pandas. A la hora de importar fechas … [Leer más...] acerca de Pandas: Conversion de texto a fecha
NumPy: Ordenar en base a la suma de las columnas o filas de matrices NumPy
El año pasado publiqué una entrada en la que se enseñaba a ordenar las matrices de NumPy en base a los valores de una fila o columna. Para lo que se usaba el método argsort(). En esta ocasión veremos otro problema similar y bastante habitual: ordenar en base a la suma de las columnas o de las filas.Obtener la suma de las columnas o filas en NumPyPara continuar es … [Leer más...] acerca de NumPy: Ordenar en base a la suma de las columnas o filas de matrices NumPy
Pandas: Cambiar los tipos de datos en los DataFrames
Al trabajar con DataFrames de Pandas se puede observar que cada una de las series contiene un tipo de dato diferentes, como puede ser cadenas de caracteres, fechas, enteros o reales. En esta entrada, vamos a ver como se puede cambiar los tipos de datos en los DataFrames. Usando para ello el método astype(). Una operación que se puede realizar tanto sobre una única serie del … [Leer más...] acerca de Pandas: Cambiar los tipos de datos en los DataFrames
NumPy: Convertir matrices de NumPy en vectores
Existen diferentes opciones para transformar las matrices de NumPy en vectores: el método flatten() o la función ravel(). Veamos a continuación la forma de trabajar con ambos.El método flatten()En los objetos ndarray de NumPy existe el método flatten() con el cual se puede aplacar el contenido de los objetos, es decir, convertir una matriz de cualquier dimensión en una … [Leer más...] acerca de NumPy: Convertir matrices de NumPy en vectores
Pandas: Seleccionar elementos aleatorios en DataFrames Pandas
Los objetos DataFrame de Pandas cuenta con el método sample() mediante el cual es posible seleccionar un subconjunto aleatorio de elementos. Algo que es de gran utilidad para realizar muestreo de datos. Veamos a continuación cómo se puede usar este método para seleccionar elementos aleatorios en DataFrames.El método sample() de los DataFramesLa forma en la que se puede … [Leer más...] acerca de Pandas: Seleccionar elementos aleatorios en DataFrames Pandas
NumPy: Convertir un objeto de NumPy en una lista de Python
En esta ocasión vamos a ver los pasos para realizar una operación que posiblemente debamos realizar de forma habitual: convertir un objeto de NumPy en una lista de Python. Pudiendo exportar así los datos para usar en funciones que no pueden trabajar directamente con objetos de NumPy. Siendo el complemento a la creación de arrays en base a listas o tuplas. La conversión se … [Leer más...] acerca de NumPy: Convertir un objeto de NumPy en una lista de Python
Pandas: Aplicar una función a las filas o columnas de un DataFrame
En el caso de que necesitemos aplicar una misma función a las filas o columnas de un objeto DataFrame de Pandas contamos con el método apply(). Con el que es posible aplicar patrones de programación funcional a los conjuntos de datos. Esto hace que sea un método interesante de conocer y, cuando se comprende bien su funcionamiento, permite realizar operaciones complejas de forma … [Leer más...] acerca de Pandas: Aplicar una función a las filas o columnas de un DataFrame
Librería Python para resolver el Bandido Multibrazo (Multi-Armed Bandit)
Durante los últimos meses he estado dedicando las entradas de los viernes a describir diferentes estrategias existentes para abordar los problemas tipo Bandido Multibrazo (Multi-Armed Bandit) e implementarlas en Python. Creando de este modo una colección de código que puede ser interesante para la realización de comparaciones entre algoritmos. Por eso, recientemente he … [Leer más...] acerca de Librería Python para resolver el Bandido Multibrazo (Multi-Armed Bandit)
Pandas: Encontrar la posición y valores de máximos y mínimos en un DataFrame
Los objetos DataFrame de Pandas disponen de los métodos max() e idxmax() con los que es posible obtener respectivamente el máximo de los valores y la posición de estos. Algo que se puede hacer tanto por filas como por columnas. De forma análoga a estos, también existen los métodos min() e idxmin() con los que es posible los valores mínimos y su posición. En esta entrada vamos a … [Leer más...] acerca de Pandas: Encontrar la posición y valores de máximos y mínimos en un DataFrame