Análisis de datos con Python

En este artículo, discutiremos cómo realizar análisis de datos con Python. Discutiremos todo tipo de análisis de datos, es decir, análisis de datos numéricos con NumPy, datos tabulares con Pandas, visualización de datos Matplotlib y análisis de datos exploratorios.

Análisis de datos con Python

Análisis de los datos es la técnica de recopilar, transformar y organizar datos para realizar predicciones futuras y decisiones informadas basadas en datos. También ayuda a encontrar posibles soluciones a un problema empresarial. Hay seis pasos para el análisis de datos. Ellos son:

  • Preguntar o especificar requisitos de datos
  • Preparar o recopilar datos
  • Limpiar y procesar
  • Analizar
  • Compartir
  • Actuar o informar

Análisis de datos con Python



Nota: Para saber más sobre estos pasos consulte nuestra NumPy es un paquete de procesamiento de matrices en Python y proporciona un objeto de matriz multidimensional de alto rendimiento y herramientas para trabajar con estas matrices. Es el paquete fundamental para la computación científica con Python.

Matrices en NumPy

Matriz numérica es una tabla de elementos (normalmente números), todos del mismo tipo, indexados por una tupla de números enteros positivos. En Numpy, el número de dimensiones de la matriz se denomina rango de la matriz. Una tupla de números enteros que indica el tamaño de la matriz a lo largo de cada dimensión se conoce como forma de la matriz.

Creando una matriz NumPy

Las matrices NumPy se pueden crear de varias maneras, con varios rangos. También se puede crear con el uso de diferentes tipos de datos como listas, tuplas, etc. El tipo de matriz resultante se deduce del tipo de elementos en las secuencias. NumPy ofrece varias funciones para crear matrices con contenido de marcador de posición inicial. Esto minimiza la necesidad de cultivar matrices, una operación costosa.

Crear matriz usando numpy.empty(forma, dtype=flotante, orden='C')

Python3
import numpy as np b = np.empty(2, dtype = int) print('Matrix b : 
', b) a = np.empty([2, 2], dtype = int) print('
Matrix a : 
', a) c = np.empty([3, 3]) print('
Matrix c : 
', c) 

Producción:

Matriz vacía usando pandas

Matriz vacía usando pandas

Crear matriz usando numpy.zeros (forma, tipo d = Ninguno, orden = 'C')

Python3
import numpy as np b = np.zeros(2, dtype = int) print('Matrix b : 
', b) a = np.zeros([2, 2], dtype = int) print('
Matrix a : 
', a) c = np.zeros([3, 3]) print('
Matrix c : 
', c) 

Producción:

Matrix b :   [0 0]  Matrix a :   [[0 0]  [0 0]]  Matrix c :   [[0. 0. 0.]  [0. 0. 0.]  [0. 0. 0.]] 

Operaciones en matrices Numpy

Operaciones aritmeticas

  • Suma:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing addition using arithmetic operator add_ans = a+b print(add_ans) # Performing addition using numpy function add_ans = np.add(a, b) print(add_ans) # The same functions and operations can be used for # multiple matrices c = np.array([1, 2, 3, 4]) add_ans = a+b+c print(add_ans) add_ans = np.add(a, b, c) print(add_ans) 

Producción:

[ 7 77 23 130] [ 7 77 23 130] [ 8 79 26 134] [ 7 77 23 130] 
  • Sustracción:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing subtraction using arithmetic operator sub_ans = a-b print(sub_ans) # Performing subtraction using numpy function sub_ans = np.subtract(a, b) print(sub_ans) 

Producción:

[ 3 67 3 70] [ 3 67 3 70] 
  • Multiplicación:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing multiplication using arithmetic # operator mul_ans = a*b print(mul_ans) # Performing multiplication using numpy function mul_ans = np.multiply(a, b) print(mul_ans) 

Producción:

[ 10 360 130 3000] [ 10 360 130 3000] 
  • División:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing division using arithmetic operators div_ans = a/b print(div_ans) # Performing division using numpy functions div_ans = np.divide(a, b) print(div_ans) 

Producción:

[ 2.5 14.4 1.3 3.33333333] [ 2.5 14.4 1.3 3.33333333] 

Para obtener más información, consulte nuestra NumPy – Tutorial de operaciones aritméticas

Indexación de matrices NumPy

Indexación se puede hacer en NumPy usando una matriz como índice. En el caso del segmento, se devuelve una vista o una copia superficial de la matriz, pero en la matriz de índice, se devuelve una copia de la matriz original. Las matrices Numpy se pueden indexar con otras matrices o cualquier otra secuencia con la excepción de las tuplas. El último elemento está indexado por -1 segundo, el último por -2 y así sucesivamente.

Indexación de matrices NumPy de Python

Python3
# Python program to demonstrate # the use of index arrays. import numpy as np # Create a sequence of integers from # 10 to 1 with a step of -2 a = np.arange(10, 1, -2) print('
 A sequential array with a negative step: 
',a) # Indexes are specified inside the np.array method. newarr = a[np.array([3, 1, 2 ])] print('
 Elements at these indices are:
',newarr) 

Producción:

A sequential array with a negative step:   [10 8 6 4 2]   Elements at these indices are:  [4 8 6] 

Corte de matriz NumPy

Considere la sintaxis x[obj] donde x es la matriz y obj es el índice. El objeto de corte es el índice en el caso de rebanado básico . El corte básico ocurre cuando obj es:

  • un objeto de corte que tiene la forma inicio: parada: paso
  • un número entero
  • o una tupla de objetos de corte y números enteros

Todas las matrices generadas mediante corte básico son siempre la vista en la matriz original.

Python3
# Python program for basic slicing. import numpy as np # Arrange elements from 0 to 19 a = np.arange(20) print('
 Array is:
 ',a) # a[start:stop:step] print('
 a[-8:17:1] = ',a[-8:17:1]) # The : operator means all elements till the end. print('
 a[10:] = ',a[10:]) 

Producción:

Array is: [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19]  a[-8:17:1] = [12 13 14 15 16]  a[10:] = [10 11 12 13 14 15 16 17 18 19] 

La elipsis también se puede utilizar junto con el corte básico. La elipsis (…) es el número de objetos necesarios para hacer una tupla de selección de la misma longitud que las dimensiones de la matriz.

Python3
# Python program for indexing using basic slicing with ellipsis import numpy as np # A 3 dimensional array. b = np.array([[[1, 2, 3],[4, 5, 6]], [[7, 8, 9],[10, 11, 12]]]) print(b[...,1]) #Equivalent to b[: ,: ,1 ] 

Producción:

[[ 2 5]  [ 8 11]] 

Transmisión de matriz NumPy

El término radiodifusión se refiere a cómo numpy trata matrices con diferentes dimensiones durante operaciones aritméticas que conducen a ciertas restricciones, la matriz más pequeña se transmite a través de la matriz más grande para que tengan formas compatibles.

Supongamos que tenemos un gran conjunto de datos, cada dato es una lista de parámetros. En Numpy tenemos una matriz 2-D, donde cada fila es un dato y el número de filas es el tamaño del conjunto de datos. Supongamos que queremos aplicar algún tipo de escala a todos estos datos, cada parámetro obtiene su propio factor de escala o digamos que cada parámetro se multiplica por algún factor.

Sólo para tener una comprensión clara, contemos las calorías de los alimentos utilizando un desglose de macronutrientes. En términos generales, las partes calóricas de los alimentos están compuestas de grasas (9 calorías por gramo), proteínas (4 GPC) y carbohidratos (4 GPC). Entonces, si enumeramos algunos alimentos (nuestros datos) y para cada alimento enumeramos su desglose de macronutrientes (parámetros), podemos multiplicar cada nutriente por su valor calórico (aplicar escala) para calcular el desglose calórico de cada alimento.

Transmisión de matriz NumPy

Con esta transformación, ahora podemos calcular todo tipo de información útil. Por ejemplo, cuál es el número total de calorías presentes en algún alimento o, dado un desglose de mi cena, saber cuántas calorías obtuve de las proteínas, etc.

Veamos una forma ingenua de producir este cálculo con Numpy:

Python3
import numpy as np macros = np.array([ [0.8, 2.9, 3.9], [52.4, 23.6, 36.5], [55.2, 31.7, 23.9], [14.4, 11, 4.9] ]) # Create a new array filled with zeros, # of the same shape as macros. result = np.zeros_like(macros) cal_per_macro = np.array([3, 3, 8]) # Now multiply each row of macros by # cal_per_macro. In Numpy, `*` is # element-wise multiplication between two arrays. for i in range(macros.shape[0]): result[i, :] = macros[i, :] * cal_per_macro result 

Producción:

array([[ 2.4, 8.7, 31.2],  [157.2, 70.8, 292. ],  [165.6, 95.1, 191.2],  [ 43.2, 33. , 39.2]]) 

Reglas de transmisión: La transmisión de dos matrices juntas sigue estas reglas:

  • Si las matrices no tienen el mismo rango, anteponga 1 a la forma de la matriz de rango inferior hasta que ambas formas tengan la misma longitud.
  • Las dos matrices son compatibles en una dimensión si tienen el mismo tamaño en la dimensión o si una de las matrices tiene el tamaño 1 en esa dimensión.
  • Las matrices se pueden transmitir juntas si son compatibles con todas las dimensiones.
  • Después de la transmisión, cada matriz se comporta como si tuviera una forma igual al máximo de formas por elementos de las dos matrices de entrada.
  • En cualquier dimensión en la que una matriz tenga un tamaño de 1 y la otra matriz tenga un tamaño mayor que 1, la primera matriz se comporta como si se hubiera copiado a lo largo de esa dimensión.
Python3
import numpy as np v = np.array([12, 24, 36]) w = np.array([45, 55]) # To compute an outer product we first # reshape v to a column vector of shape 3x1 # then broadcast it against w to yield an output # of shape 3x2 which is the outer product of v and w print(np.reshape(v, (3, 1)) * w) X = np.array([[12, 22, 33], [45, 55, 66]]) # x has shape 2x3 and v has shape (3, ) # so they broadcast to 2x3, print(X + v) # Add a vector to each column of a matrix X has # shape 2x3 and w has shape (2, ) If we transpose X # then it has shape 3x2 and can be broadcast against w # to yield a result of shape 3x2. # Transposing this yields the final result # of shape 2x3 which is the matrix. print((X.T + w).T) # Another solution is to reshape w to be a column # vector of shape 2X1 we can then broadcast it # directly against X to produce the same output. print(X + np.reshape(w, (2, 1))) # Multiply a matrix by a constant, X has shape 2x3. # Numpy treats scalars as arrays of shape(); # these can be broadcast together to shape 2x3. print(X * 2) 

Producción:

[[ 540 660]  [1080 1320]  [1620 1980]] [[ 24 46 69]  [ 57 79 102]] [[ 57 67 78]  [100 110 121]] [[ 57 67 78]  [100 110 121]] [[ 24 44 66]  [ 90 110 132]] 

Nota: Para obtener más información, consulte nuestra Tutorial de Python NumPy .

Análisis de datos utilizando Pandas

Python Pandas se utiliza para datos relacionales o etiquetados y proporciona varias estructuras de datos para manipular dichos datos y series de tiempo. Esta biblioteca está construida sobre la biblioteca NumPy. Este módulo generalmente se importa como:

import pandas as pd 

Aquí, se hace referencia a pd como un alias de Pandas. Sin embargo, no es necesario importar la biblioteca usando el alias, solo ayuda a escribir menos cantidad de código cada vez que se llama a un método o propiedad. Los pandas generalmente proporcionan dos estructuras de datos para manipular datos. Son:

  • Serie
  • Marco de datos

Serie:

Serie Pandas es una matriz etiquetada unidimensional capaz de contener datos de cualquier tipo (entero, cadena, flotante, objetos Python, etc.). Las etiquetas de los ejes se denominan colectivamente índices. Pandas Series no es más que una columna en una hoja de Excel. No es necesario que las etiquetas sean únicas, pero deben ser de tipo hash. El objeto admite indexación basada en números enteros y etiquetas y proporciona una gran cantidad de métodos para realizar operaciones que involucran el índice.

Serie Pandas

Se puede crear usando la función Serie() cargando el conjunto de datos desde el almacenamiento existente como SQL, base de datos, archivos CSV, archivos Excel, etc., o desde estructuras de datos como listas, diccionarios, etc.

Serie de creación de pandas de Python

Python3
import pandas as pd import numpy as np # Creating empty series ser = pd.Series() print(ser) # simple array data = np.array(['g', 'e', 'e', 'k', 's']) ser = pd.Series(data) print(ser) 

Producción:

serie pnadas

serie pnadas

Marco de datos:

Marco de datos de Pandas es una estructura de datos tabulares bidimensional, potencialmente heterogénea y de tamaño mutable, con ejes etiquetados (filas y columnas). Un marco de datos es una estructura de datos bidimensional, es decir, los datos están alineados en forma de tabla en filas y columnas. Pandas DataFrame consta de tres componentes principales: datos, filas y columnas.

Marco de datos de Pandas

Se puede crear utilizando el método Dataframe() y, al igual que una serie, también puede ser de diferentes tipos de archivos y estructuras de datos.

Python Pandas creando marco de datos

Python3
import pandas as pd # Calling DataFrame constructor df = pd.DataFrame() print(df) # list of strings lst = ['Geeks', 'For', 'Geeks', 'is', 'portal', 'for', 'Geeks'] # Calling DataFrame constructor on list df = pd.DataFrame(lst) df 

Producción:

Creando marco de datos a partir de la lista

Creando un marco de datos a partir de la lista de Python

Creando un marco de datos desde CSV

Podemos crear un marco de datos desde el CSV archivos usando el leer_csv() función.

Python Pandas lee CSV

Python3
import pandas as pd # Reading the CSV file df = pd.read_csv('Iris.csv') # Printing top 5 rows df.head() 

Producción:

cabeza de un marco de datos

cabeza de un marco de datos

Filtrado de marco de datos

pandas marco de datos.filtro() La función se utiliza para subconjuntos de filas o columnas de un marco de datos de acuerdo con las etiquetas en el índice especificado. Tenga en cuenta que esta rutina no filtra un marco de datos según su contenido. El filtro se aplica a las etiquetas del índice.

Marco de datos del filtro Python Pandas

Python3
import pandas as pd # Reading the CSV file df = pd.read_csv('Iris.csv') # applying filter function df.filter(['Species', 'SepalLengthCm', 'SepalLengthCm']).head() 

Producción:

Aplicar filtro en el conjunto de datos

Aplicar filtro en el conjunto de datos

Ordenar marco de datos

Para ordenar el marco de datos en pandas, la función ordenar_valores() se utiliza. Pandas sort_values() puede ordenar el marco de datos en orden ascendente o descendente.

Python Pandas ordenando el marco de datos en orden ascendente

Producción:

Conjunto de datos ordenados según un valor de columna

Conjunto de datos ordenados según un valor de columna

Grupo PandasPor

Agrupar por Es un concepto bastante simple. Podemos crear una agrupación de categorías y aplicar una función a las categorías. En proyectos reales de ciencia de datos, tendrás que lidiar con grandes cantidades de datos y probar cosas una y otra vez, por lo que, para mayor eficiencia, utilizamos el concepto Groupby. Groupby se refiere principalmente a un proceso que involucra uno o más de los siguientes pasos:

  • Terrible: Es un proceso en el que dividimos los datos en grupos aplicando algunas condiciones en los conjuntos de datos.
  • Aplicando: Es un proceso en el que aplicamos una función a cada grupo de forma independiente.
  • Combinatorio: Es un proceso en el que combinamos diferentes conjuntos de datos después de aplicar groupby y resultados en una estructura de datos.

La siguiente imagen ayudará a comprender el proceso involucrado en el concepto Groupby.

1. Agrupe los valores únicos de la columna Equipo.

Método Groupby de Pandas

2. Ahora hay un cubo para cada grupo.

3. Mezcle los demás datos en los cubos.

Grupo PandasPor

4. Aplique una función en la columna de peso de cada cubo.

Aplicar función en la columna de peso de cada columna

Grupo Python PandasPor

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'Name': ['Jai', 'Anuj', 'Jai', 'Princi', 'Gaurav', 'Anuj', 'Princi', 'Abhi'], 'Age': [27, 24, 22, 32, 33, 36, 27, 32], 'Address': ['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj', 'Jaunpur', 'Kanpur', 'Allahabad', 'Aligarh'], 'Qualification': ['Msc', 'MA', 'MCA', 'Phd', 'B.Tech', 'B.com', 'Msc', 'MA']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) print('Original Dataframe') display(df) # applying groupby() function to # group the data on Name value. gk = df.groupby('Name') # Let's print the first entries # in all the groups formed. print('After Creating Groups') gk.first() 

Producción:

grupo de pandas

grupo de pandas

Aplicando función al grupo:

Después de dividir un dato en un grupo, aplicamos una función a cada grupo para ello realizamos algunas operaciones que son:

  • Agregación: Es un proceso en el que calculamos una estadística (o estadísticas) resumida sobre cada grupo. Por ejemplo, calcular sumas o medias de grupos
  • Transformación: Es un proceso en el que realizamos algunos cálculos específicos del grupo y devolvemos un índice similar. Por ejemplo, completar NA dentro de grupos con un valor derivado de cada grupo
  • Filtración: Es un proceso en el que descartamos algunos grupos, de acuerdo con un cálculo grupal que evalúa Verdadero o Falso. Por ejemplo, filtrar datos según la suma o media del grupo

Agregación de pandas

Agregación es un proceso en el que calculamos una estadística resumida sobre cada grupo. La función agregada devuelve un único valor agregado para cada grupo. Después de dividir los datos en grupos usando la función groupby, se pueden realizar varias operaciones de agregación en los datos agrupados.

Agregación de pandas de Python

Python3
# importing pandas module import pandas as pd # importing numpy as np import numpy as np # Define a dictionary containing employee data data1 = {'Name': ['Jai', 'Anuj', 'Jai', 'Princi', 'Gaurav', 'Anuj', 'Princi', 'Abhi'], 'Age': [27, 24, 22, 32, 33, 36, 27, 32], 'Address': ['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj', 'Jaunpur', 'Kanpur', 'Allahabad', 'Aligarh'], 'Qualification': ['Msc', 'MA', 'MCA', 'Phd', 'B.Tech', 'B.com', 'Msc', 'MA']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) # performing aggregation using # aggregate method grp1 = df.groupby('Name') grp1.aggregate(np.sum) 

Producción:

Uso de la función de suma agregada en el conjunto de datos

Uso de la función de suma agregada en el conjunto de datos

Concatenar marco de datos

Para concatenar el marco de datos, utilizamos concat() función que ayuda a concatenar el marco de datos. Esta función hace todo el trabajo pesado de realizar operaciones de concatenación junto con un eje de objetos Pandas mientras realiza una lógica de conjunto opcional (unión o intersección) de los índices (si los hay) en los otros ejes.

Python Pandas concatenar marco de datos

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Name':['Jai', 'Princi', 'Gaurav', 'Anuj'], 'Age':[27, 24, 22, 32],} # Define a dictionary containing employee data data2 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Address':['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj'], 'Qualification':['Btech', 'B.A', 'Bcom', 'B.hons']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) # Convert the dictionary into DataFrame df1 = pd.DataFrame(data2) display(df, df1) # combining series and dataframe res = pd.concat([df, df1], axis=1) res 

Producción:

Fusionando marco de datos

Cuando necesitamos combinar DataFrames muy grandes, las uniones sirven como una forma poderosa de realizar estas operaciones rápidamente. Las uniones solo se pueden realizar en dos DataFrames a la vez, indicados como tablas izquierda y derecha. La clave es la columna común en la que se unirán los dos DataFrames. Es una buena práctica utilizar claves que tengan valores únicos en toda la columna para evitar la duplicación involuntaria de valores de fila. Los pandas proporcionan una única función, unir() , como punto de entrada para todas las operaciones estándar de unión de bases de datos entre objetos DataFrame.

Hay cuatro formas básicas de manejar la combinación (interna, izquierda, derecha y externa), dependiendo de qué filas deben conservar sus datos.

Fusionar Daframe Python Pandas

Marco de datos de fusión de Python Pandas

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Name':['Jai', 'Princi', 'Gaurav', 'Anuj'], 'Age':[27, 24, 22, 32],} # Define a dictionary containing employee data data2 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Address':['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj'], 'Qualification':['Btech', 'B.A', 'Bcom', 'B.hons']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) # Convert the dictionary into DataFrame df1 = pd.DataFrame(data2) display(df, df1) # using .merge() function res = pd.merge(df, df1, on='key') res 

Producción:

Concatinando dos conjuntos de datos

Concatinando dos conjuntos de datos

Unirse al marco de datos

Para unirnos al marco de datos, utilizamos .unirse() función esta función se utiliza para combinar las columnas de dos DataFrames indexados potencialmente de manera diferente en un único DataFrame de resultado.

Python Pandas se une al marco de datos

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'Name':['Jai', 'Princi', 'Gaurav', 'Anuj'], 'Age':[27, 24, 22, 32]} # Define a dictionary containing employee data data2 = {'Address':['Allahabad', 'Kannuaj', 'Allahabad', 'Kannuaj'], 'Qualification':['MCA', 'Phd', 'Bcom', 'B.hons']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1,index=['K0', 'K1', 'K2', 'K3']) # Convert the dictionary into DataFrame df1 = pd.DataFrame(data2, index=['K0', 'K2', 'K3', 'K4']) display(df, df1) # joining dataframe res = df.join(df1) res 

Producción:

Unir dos conjuntos de datos

Para obtener más información, consulte nuestra Pandas fusionándose, uniéndose y concatenándose tutorial

Para obtener una guía completa sobre los pandas, consulte nuestra Tutorial de pandas .

Visualización con Matplotlib

Matplotlib es fácil de usar y una increíble biblioteca de visualización en Python. Está construido sobre matrices NumPy y diseñado para funcionar con la pila SciPy más amplia y consta de varios gráficos como líneas, barras, dispersión, histograma, etc.

Trazado de datos

Trazado de datos es un módulo Matplotlib que proporciona una interfaz similar a MATLAB. Pyplot proporciona funciones que interactúan con la figura, es decir, crea una figura, decora el gráfico con etiquetas y crea un área de trazado en una figura.

Python3
# Python program to show pyplot module import matplotlib.pyplot as plt plt.plot([1, 2, 3, 4], [1, 4, 9, 16]) plt.axis([0, 6, 0, 20]) plt.show() 

Producción:

Gráfico de barras

A diagrama de barras o gráfico de barras es un gráfico que representa la categoría de datos con barras rectangulares con longitudes y alturas que son proporcionales a los valores que representan. Los gráficos de barras se pueden trazar horizontal o verticalmente. Un gráfico de barras describe las comparaciones entre las categorías discretas. Se puede crear usando el método bar().

Gráfico de barras Python Matplotlib

Aquí usaremos solo el conjunto de datos del iris.

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') # This will plot a simple bar chart plt.bar(df['Species'], df['SepalLengthCm']) # Title to the plot plt.title('Iris Dataset') # Adding the legends plt.legend(['bar']) plt.show() 

Producción:

Gráfico de barras usando la biblioteca matplotlib

Gráfico de barras usando la biblioteca matplotlib

Histogramas

A histograma Se utiliza básicamente para representar datos en forma de algunos grupos. Es un tipo de gráfico de barras donde el eje X representa los rangos de contenedores mientras que el eje Y brinda información sobre la frecuencia. Para crear un histograma, el primer paso es crear un contenedor de rangos, luego distribuir todo el rango de valores en una serie de intervalos y contar los valores que caen en cada uno de los intervalos. Los contenedores se identifican claramente como intervalos de variables consecutivos y que no se superponen. El historia() La función se utiliza para calcular y crear un histograma de x.

Histograma de Python Matplotlib

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.hist(df['SepalLengthCm']) # Title to the plot plt.title('Histogram') # Adding the legends plt.legend(['SepalLengthCm']) plt.show() 

Producción:

Histplot usando la biblioteca matplotlib

Gráfico de dispersión

Los diagramas de dispersión se utilizan para observar la relación entre variables y utilizan puntos para representar la relación entre ellas. El dispersión() El método de la biblioteca matplotlib se utiliza para dibujar un diagrama de dispersión.

Diagrama de dispersión de Python Matplotlib

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.scatter(df['Species'], df['SepalLengthCm']) # Title to the plot plt.title('Scatter Plot') # Adding the legends plt.legend(['SepalLengthCm']) plt.show() 

Producción:

Diagrama de dispersión usando la biblioteca matplotlib

Diagrama de dispersión usando la biblioteca matplotlib

Diagrama de caja

A diagrama de caja ,Correlación también conocida como diagrama de caja y bigotes. Es una muy buena representación visual cuando se trata de medir la distribución de datos. Traza claramente los valores medianos, los valores atípicos y los cuartiles. Comprender la distribución de datos es otro factor importante que conduce a una mejor construcción de modelos. Si los datos tienen valores atípicos, el diagrama de caja es una forma recomendada de identificarlos y tomar las medidas necesarias. El gráfico de cajas y bigotes muestra cómo se distribuyen los datos. Generalmente se incluyen cinco datos en el cuadro.

  • El mínimo se muestra en el extremo izquierdo del gráfico, al final del 'bigotes' izquierdo.
  • El primer cuartil, Q1, es el extremo izquierdo del cuadro (bigote izquierdo)
  • La mediana se muestra como una línea en el centro del cuadro.
  • Tercer cuartil, Q3, mostrado en el extremo derecho del cuadro (bigotes derechos)
  • El máximo está en el extremo derecho del cuadro.

Representación del diagrama de caja

Rango intercuartil

Rango intercuartil

Diagrama de caja ilustrativo

Diagrama de caja ilustrativo

Diagrama de caja de Python Matplotlib

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.boxplot(df['SepalWidthCm']) # Title to the plot plt.title('Box Plot') # Adding the legends plt.legend(['SepalWidthCm']) plt.show() 

Producción:

Diagrama de caja usando la biblioteca matplotlib

Diagrama de caja usando la biblioteca matplotlib

Mapas de calor de correlación

Un mapa de calor 2-D es una herramienta de visualización de datos que ayuda a representar la magnitud del fenómeno en forma de colores. Un mapa de calor de correlación es un mapa de calor que muestra una matriz de correlación 2D entre dos dimensiones discretas, utilizando celdas de colores para representar datos de una escala generalmente monocromática. Los valores de la primera dimensión aparecen como filas de la tabla, mientras que la segunda dimensión es una columna. El color de la celda es proporcional al número de medidas que coinciden con el valor dimensional. Esto hace que los mapas de calor de correlación sean ideales para el análisis de datos, ya que hace que los patrones sean fácilmente legibles y resalta las diferencias y variaciones en los mismos datos. Un mapa de calor de correlación, como un mapa de calor normal, cuenta con la ayuda de una barra de colores que hace que los datos sean fácilmente legibles y comprensibles.

Nota: Los datos aquí deben pasarse con el método corr() para generar un mapa de calor de correlación. Además, corr() elimina las columnas que no serán de utilidad mientras genera un mapa de calor de correlación y selecciona aquellas que se pueden usar.

Mapa de calor de correlación de Python Matplotlib

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.imshow(df.corr() , cmap = 'autumn' , interpolation = 'nearest' ) plt.title('Heat Map') plt.show() 

Producción:

Mapa de calor usando la biblioteca matplotlib

Mapa de calor usando la biblioteca matplotlib

Para obtener más información sobre visualización de datos, consulte nuestros tutoriales a continuación:

Artículos Más Populares

Categoría

Artículos De Interés