viernes, 1 de octubre de 2021

Graficos Estadisticos con Matplotlib - Diagrama de Barras

 

Diagrama de Barras con Matplotlib y Pandas


El Diagrama de Barras es un gráfico que se utiliza para representar datos de variables cualitativas o discretas. Está formado por barras rectangulares cuya altura es proporcional a la frecuencia de cada uno de los valores de la variable.

Siguiendo con el ejemplo de datos estadisticos de Canadá, escojemos un país para mostrar,
realizamos la carga de los datos, los modificamos, y agregamos el siguiente código:

#creamos la estructura especificando el rango de los datos

years=list(map(str,range(1980,2014)))

#localizamos los datos del pais que queremos

df_iceland=df_can.loc['Iceland', years]

#especificamos el tipo de grafico

df_iceland.plot(kind='bar')

#configuramos la visualizacion del cuadro

pllt.title('Iceland imigration to canada from 1980 to 2013')

pllt.ylabel('Years')

pllt.xlabel('Number of Inmigrants')

pllt.show()


Código Completo

Resultado



sábado, 1 de mayo de 2021

Graficos Estadisticos con Matplotlib - Histogramas


Histogramas con Matplotlib y Pandas

Los histogramas son gráficos que indican la frecuencia de un hecho mediante una distribución de los datos. Los histogramas no se pueden elaborar con atributos, sino con variables medibles tales como peso, temperatura, tiempo, etc.

Los histogramas se utilizan para:

  • Interpretar las variaciones de los datos.
  • Ofrecer una mejor visión de la información proporcionada por los datos para interpretarlos más adecuadamente.
  • Identificar las causas del problema.
  • Comprobar las causas.
  • Valorar la solución una vez que se ha eliminado la causa del problema.

Siguiendo con el ejemplo de datos de Canadá, realizamos la carga de los datos, los modificamos, y agregamos el siguiente código:

#divide la extensión de los datos de 2013 en 10 contenedores de igual ancho

count, bin_edges= np.histogram(df_can['2013'])

#genero el histograma

df_can['2013'].plot(kind='hist', xticks = bin_edges)

#configuramos la visualizacion del cuadro

pllt.title('IHistogram of Inmigration from 195 countries in 2013')

pllt.ylabel('Number of Countries')

pllt.xlabel('Number of Inmigrants')

pllt.show()


Código Completo


Resultado



viernes, 30 de abril de 2021

Gráficos Estadísticos con Matplotlib - Gráficos de Área

 Gráficos Estadísticos con Matplotlib - 

Gráficos de Área

Un gráfico de área es un gráfico de líneas en el que el área entre la línea y el eje aparece sombreada con un color. Estos gráficos normalmente se usan para representar los totales acumulados a lo largo del tiempo y son la forma convencional de visualizar líneas apiladas.

Para el ejemplo que hemos estado usando en este blog, debemos además ordenar los datos para que nuestro gráfico nos muestre los datos de los primeros resultados, en este caso le llamaremos Top 5 de países, como antecedente tenemos el código de apertura del archivo:

import numpy as np 

import pandas as pd

import matplotlib as mpl 

from matplotlib import pyplot as pllt

#lee el archivo xls

df_can = pd.read_excel(

'https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DV0101EN/labs/Data_Files/Canada.xlsx',

#ignora las primeras 20 filas que corresponden al enunciado 

skiprows =range(20),

sheet_name="Canada by Citizenship",

skipfooter=2

)

#renombra las columnas

df_can = df_can.rename(columns={"OdName": "Country", "AreaName": "Continent", "RegName": "Region"})

#configura a Country como linea de indice para usarlo despues en las busquedas.

df_can = df_can.set_index('Country')

# Elimina unas columnas extras

df_can = df_can.drop(columns=["Type", "Coverage", "AREA", "REG", "DEV"])

# Calcula el total 

df_can['Total'] = df_can.iloc[:, 3:].sum(axis=1)

# Convierte todos los nombres de las columnas en string

df_can.columns = df_can.columns.astype(str)


Y a continuación el código que nos ayuda en la manipulación de los datos para mostrar el cuadro por área:


#creamos una estructura con los datos 

years= list(map(str,range(1980,2014)))

#Ordenar los datos

df_can.sort_values(['Total'], ascending = False, axis = 0, inplace = True)

#Mostrar solo los primeros 5 resultados

df_top5=df_can.head()

df_top5=df_top5[years].transpose()

#Definimos el tipo de cuadro

df_top5.plot(kind='area')

#seleccionamos los datos del archivo

#df_can.loc['Haiti',years].plot(kind='line')

#configuramos la visualizacion del cuadro

pllt.title('Inmigration trend of top 5 countries')

pllt.ylabel('Number of Inmigrants')

pllt.xlabel('Years')

pllt.show()

print(df_can.head())

Código del Programa

Visualización de la Tabla de Datos


Gráfico de Área





Gráficos Estadísticos con Matplotlib - Gráficos Lineales

 Gráficos Estadísticos con Matplotlib - 

Gráficos Lineales

    A partir de las entradas correspondientes a la Manipulación de Datos que se encuentran en las siguientes entradas del blog:

Podemos crear gráficos que nos ayuden con el análisis de la información, ya que la visualización sera más intuitiva. 

Existen diferentes Tipos de Gráficos que se pueden usar, pero debemos tener en cuenta que para mayor facilidad de entendimiento de los datos muchas veces usar los cuadros más simples es la solución más óptima.

Usare en este ejercicio un Gráfico Lineal, que nos ayudara a representar los datos de Inmigración por año del país Haití hacia Canadá.

Modificando el archivo anterior debemos importar las librerías de matplottib con el siguiente código:


import matplotlib as mpl 

from matplotlib import pyplot as pllt


Luego agregamos lo siguiente debajo del código usado para la manipulación de datos:


#creamos una estructura con los datos 

years= list(map(str,range(1980,2014)))

#seleccionamos los datos del archivo

df_can.loc['Haiti',years].plot(kind='line')

#configuramos la visualizacion del cuadro

pllt.title('Inmigration from Haiti')

pllt.ylabel('Number of Inmigrants')

pllt.xlabel('Years')

pllt.show()









jueves, 29 de abril de 2021

Manejar un archivo de Excel en Python (2)

 Manejar un archivo de Excel en Python (2)

La manipulacion de los archivos corresponde a todas las opciones que nos proporciona Pandas para usar el archivo, como abrir, eliminar, modificar filas columnas, modificar datos del archivo, entre otros.

En este ejemplo voy a abrir un archivo de Excel extraído de una dirección web, renombrando unas columnas y manipulando los datos para poder agregar una nueva columna que contenga un valor total:

import numpy as np 

import pandas as pd 

#lee el archivo xls

df_can = pd.read_excel(

'https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DV0101EN/labs/Data_Files/Canada.xlsx',

#ignora las primeras 20 filas que corresponden al enunciado 

skiprows =range(20),

sheet_name="Canada by Citizenship",

skipfooter=2

)

Hasta aqui es solo el código de apertura del archivo, especificando que columnas voy a ignorar.

A continuación el código correspondiente para el renombrado de columnas, el borrado de columnas, y una adición de una columna con un valor Total que es la suma de los valores alojados en celdas correspondiente a un número de personas una vez que ya hemos filtrado los datos por nombre del país.

df_can = df_can.rename(columns={"OdName": "Country", "AreaName": "Continent", "RegName": "Region"})

df_can = df_can.set_index('Country')

df_can = df_can.drop(columns=["Type", "Coverage", "AREA", "REG", "DEV"])

df_can['Total'] = df_can.iloc[:, 3:].sum(axis=1)

df_can.columns = df_can.columns.astype(str)

print(df_can.head())


Este seria el resultado que debemos obtener:



Manejar un archivo de Excel en Python

 Manejar un archivo de Excel en Python


Ejercicio:

Análisis de los Datos Obtenidos del Gobierno de Canadá sobre Inmigración.

Podemos descargar desde este enlace:

https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DV0101EN/labs/Data_Files/Canada.xlsx


Par poder iniciar con el análisis de datos en Python debemos instalar librerías que nos ayudaran con esto.

Luego hare una entrada explicando que son estas librerías y como funcionan.

Previamente instalamos las librerías numpy, pandas y openpyxl mediante pip; para esto mediante linea de comandos escribimos las siguientes instrucciones, esperando que se instalen:

pip install nympy

pip install pandas

pip install openpyxl

•Abrir un archivo alojado en una página web•

Vamos a crear un archivo de Python con el siguiente código:

import numpy as np 

import pandas as pd 

#lee el archivo xls

df_can = pd.read_excel(

'https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DV0101EN/labs/Data_Files/Canada.xlsx',

#ignora las primeras 20 filas que corresponden al enunciado 

skiprows =range(20),

sheet_name="Canada by Citizenship",

skipfooter=2

)

Tendremos un resultado similar a este:



Libreria Matpotlib en Python

 

Matplotlib

Matplotlib es una biblioteca para la generación de gráficos a partir de datos contenidos en listas o arrays en el lenguaje de programación Python y su extensión matemática NumPy. Proporciona una API, pylab, diseñada para recordar a la de MATLAB.

Como lo instalo?

Desde el símbolo del sistema escribimos la siguiente instrucción:

pip install matplotlib 

Este es un ejemplo sencillo para mostrar como representa unas coordenadas.

Primero una vez instalado Python, desde el cmd escribimos la palabra python para comenzar a trabajar.

El código que vamos a probar es:

>>import matplotlib.pyplot as plt

>>plt.plot(5,5,'o')

>>plt.show()

Se abrirá la ventana con las coordenadas que especificamos.

martes, 20 de abril de 2021

Data Visualization

 Data Visualization


Es un campo interdisciplinario que se ocupa de la representación gráfica de datos . Es una forma particularmente eficiente de comunicarse cuando los datos son numerosos como, por ejemplo, una serie temporal . Desde un punto de vista académico, esta representación puede considerarse como un mapeo entre los datos originales (generalmente numéricos) y elementos gráficos (por ejemplo, líneas o puntos en un gráfico). El mapeo determina cómo varían los atributos de estos elementos según los datos. En este sentido, un gráfico de barras es un mapeo de la longitud de una barra a la magnitud de una variable. Dado que el diseño gráfico del mapeo puede afectar negativamente a la legibilidad de un gráfico, el mapeo es una competencia central de la visualización de datos. La visualización de datos tiene sus raíces en el campo de la estadística y, por lo tanto, generalmente se considera una rama de la estadística descriptiva . Sin embargo, debido a que se requieren tanto habilidades de diseño como habilidades estadísticas y de computación para visualizar de manera efectiva, algunos autores argumentan que es tanto un Arte como una Ciencia.


Crear un gráfico a partir de una tabla de excel o incluso un SQL como los que se han utilizado hasta hace unos años es bastante sencillo. Las variables apenas pasaban las 100 columnas y no todas estaban relacionadas entre sí. Sin embargo, a medida que se agregan e interrelacionan variables esto se vuelve más complicado. Mucho más complicado.
Para datos estructurados, como ventas, ingresos, etc, los gráficos sencillos son más que suficiente. Sin embargo, para la los datos desestructurados, como textos o imágenes, captados con sistemas de Big Data, hace falta otro tipo de técnica para visualizar la información adecuadamente.

¿Cómo funciona?

Todo se trata de la narrativa que crean estos gráficos. Al destacar las tendencias, los patrones y otros valores, puedes entender “la historia” que cuentan estos datos. Puedes saber si la producción de una fábrica subió o bajó en cierto periodo de tiempo, por ejemplo, con un gráfico lineal.

Big Data


 BIG DATA

QUE ES?

Big Data es un término que describe el gran volumen de datos, tanto estructurados como no estructurados, que inundan los negocios cada día. Pero no es la cantidad de datos lo que es importante. Lo que importa con el Big Data es lo que las organizaciones hacen con los datos. Big Data se puede analizar para obtener ideas que conduzcan a mejores decisiones y movimientos de negocios estratégicos.

Para que sirve el Big Data?

Lo que hace que Big Data sea tan útil para muchas empresas es el hecho de que proporciona respuestas a muchas preguntas que las empresas ni siquiera sabían que tenían. En otras palabras, proporciona un punto de referencia. Con una cantidad tan grande de información, los datos pueden ser moldeados o probados de cualquier manera que la empresa considere adecuada. Al hacerlo, las organizaciones son capaces de identificar los problemas de una forma más comprensible.

La recopilación de grandes cantidades de datos y la búsqueda de tendencias dentro de los datos permiten que las empresas se muevan mucho más rápidamente, sin problemas y de manera eficiente. También les permite eliminar las áreas problemáticas antes de que los problemas acaben con sus beneficios o su reputación.

El análisis de Big Data ayuda a las organizaciones a aprovechar sus datos y utilizarlos para identificar nuevas oportunidades. Eso, a su vez, conduce a movimientos de negocios más inteligentes, operaciones más eficientes, mayores ganancias y clientes más felices. Las empresas con más éxito con Big Data consiguen valor de las siguientes formas:

  • Reducción de coste. Las grandes tecnologías de datos, como Hadoop y el análisis basado en la nube, aportan importantes ventajas en términos de costes cuando se trata de almacenar grandes cantidades de datos, además de identificar maneras más eficientes de hacer negocios.
  • Más rápido, mejor toma de decisiones. Con la velocidad de Hadoop y la analítica en memoria, combinada con la capacidad de analizar nuevas fuentes de datos, las empresas pueden analizar la información inmediatamente y tomar decisiones basadas en lo que han aprendido.
  • Nuevos productos y servicios. Con la capacidad de medir las necesidades de los clientes y la satisfacción a través de análisis viene el poder de dar a los clientes lo que quieren. Con la analítica de Big Data, más empresas están creando nuevos productos para satisfacer las necesidades de los clientes.


Buscar este blog