Una introducción detallada al conjunto de tres piezas de análisis de datos de Python

1. Traje de tres piezas de uso común

Tres artefactos (numpy, pandas, matplotlib). A continuación, los métodos comúnmente utilizados se enumeran uno por uno.

Preste atención para comprender primero las dos funciones necesarias:
enumerate() la función es una de las funciones integradas de Python, que se utiliza para convertir un objeto iterable (como una lista, una tupla o una cadena) en un objeto de enumeración y devolver el índice y el valor correspondiente al mismo tiempo. En concreto, empareja cada elemento con un número ordinal, de forma que tanto el valor de cada elemento como su índice en la secuencia se pueden obtener durante la iteración.

La función principal de la función enumerate() es obtener el valor del elemento y su índice correspondiente al mismo tiempo durante el proceso de iteración. Se usa comúnmente en el análisis de datos para usar el ciclo for para extraer el índice i y el nombre del valor.

递推式构造列表(lista de comprensión) crea una terna pitagórica:

>>> [(x,y,z) for x in range(1,30) for y in range(x,30) for z in range(y,30) if x**2 + y**2 == z**2]
[(3, 4, 5), (5, 12, 13), (6, 8, 10), (7, 24, 25), (8, 15, 17), (9, 12, 15), (10, 24, 26), (12, 16, 20), (15, 20, 25), (20, 21, 29)]

## 或者简单的如下
>>> scores = [[random.randrange(50,101) for _ in range(3)] for _ in range(5)]

Dos, biblioteca numpy

NumPy es una biblioteca informática científica del lenguaje Python. Proporciona objetos de matriz multidimensional de alto rendimiento y herramientas relacionadas, que se pueden utilizar para procesar diversas tareas matemáticas, como matrices, matrices y cálculos numéricos. Aquí hay algunas funciones comunes en la biblioteca NumPy y su uso:

axis() es una función en NumPy que realiza operaciones a lo largo de un eje específico. Se utiliza para especificar en qué eje de la matriz aplicar la función para realizar cálculos en diferentes dimensiones de la matriz. Comúnmente utilizado en:

# 在n维数组上,axis = 0 是对列操作;axis = 1是对行操作。
sorces.max(axis = 0)

np.array(): crea una matriz NumPy. Por ejemplo:

import numpy as np

a = np.array([1, 2, 3, 4])
print(a)

La salida es: [1 2 3 4].

np.arange(): Crea una progresión aritmética dentro del rango especificado. Por ejemplo:

import numpy as np

a = np.arange(0, 10, 2)
print(a)

El resultado de salida es: [0 2 4 6 8].

np.linspace(): crea una secuencia de números igualmente espaciados dentro del rango especificado. Por ejemplo:

import numpy as np

a = np.linspace(0, 10, 5)
print(a)

La salida es: [ 0. 2.5 5. 7.5 10. ].

np.zeros(): crea una matriz de todos ceros de la forma especificada. Por ejemplo:

import numpy as np

a = np.zeros((3, 3))
print(a)

La salida es:

[[0. 0. 0.]
[0. 0. 0.]
[0. 0. 0.]]

np.ones(): crea una matriz todo uno de la forma especificada. Por ejemplo:

import numpy as np

a = np.ones((2, 2))
print(a)

La salida es:
[[1. 1.]
[1. 1.]]

np.eye(): crea una matriz de identidad del tamaño especificado. Por ejemplo:

import numpy as np

a = np.eye(3)
print(a)

La salida es:
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]

np.random.rand(): crea una matriz de números aleatorios de la forma especificada. Por ejemplo:

import numpy as np

a = np.random.rand(2, 3)
print(a)

La salida es:
[[0.96828581 0.29255347 0.82946626]
[0.84055973 0.39246847 0.51868462]]

np.max(): Devuelve el valor máximo de la matriz. Por ejemplo:

import numpy as np

a = np.array([1, 2, 3, 4])
max_value = np.max(a)
print(max_value)

La salida es: 4.

np.min(): Devuelve el valor mínimo de la matriz. Por ejemplo:

import numpy as np

a = np.array([1, 2, 3, 4])
min_value = np.min(a)
print(min_value)

La salida es: 1.

np.mean(): Devuelve el valor promedio en una matriz. Por ejemplo:

import numpy as np

a = np.array([1, 2, 3, 4])
mean_value = np.mean(a)
print(mean_value)

La salida es: 2.5.

np.sum(): Devuelve la suma de todos los elementos de la matriz. Por ejemplo:

import numpy as np

a = np.array([1, 2, 3, 4])
sum_value = np.sum(a)
print(sum_value)

La salida es: 10.

np.dot(): Calcula el producto escalar de dos matrices. Por ejemplo:

import numpy as np

a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])
dot_value = np.dot(a, b)
print(dot_value)

La salida es:
[[19 22]
[43 50]]

  Lo anterior enumera algunas funciones de uso común en la biblioteca NumPy, incluidas las funciones de creación de matrices, operaciones de matriz, cálculos de matriz, etc., que pueden ayudarnos a realizar cálculos numéricos y cálculos científicos de manera más conveniente.

3. pandas

Entre el 70 % y el 80 % del trabajo diario de un analista de datos implica comprender y limpiar datos, también conocido como exploración y extracción de datos.

Pandas se utiliza principalmente para el análisis de datos y es una de las bibliotecas de Python más utilizadas. Le proporciona algunas de las herramientas más útiles para explorar, limpiar y analizar datos. Con Pandas, puede cargar, preparar, manipular y analizar todo tipo de datos estructurados. Aquí hay algunas funciones comunes en la biblioteca de Pandas y su uso:

pd.DataFrame(): crea un marco de datos de Pandas. Por ejemplo:

import pandas as pd

data = {
    
    
    'name': ['Alice', 'Bob', 'Charlie', 'David'],
    'age': [25, 30, 35, 40],
    'gender': ['F', 'M', 'M', 'M']
}
df = pd.DataFrame(data)
print(df)

La salida es:


       name  age gender
0     Alice   25      F
1       Bob   30      M
2   Charlie   35      M
3     David   40      M

pd.read_csv(): lee datos de un archivo CSV y crea un Pandas DataFrame. Por ejemplo:

import pandas as pd

df = pd.read_csv('data.csv')
print(df)

df.head(): Devuelve las primeras filas de datos de DataFrame. Por ejemplo:

import pandas as pd

data = {
    
    
    'name': ['Alice', 'Bob', 'Charlie', 'David'],
    'age': [25, 30, 35, 40],
    'gender': ['F', 'M', 'M', 'M']
}
df = pd.DataFrame(data)
print(df.head(2))

La salida es:

    name  age gender
0  Alice   25      F
1    Bob   30      M

df.tail(): Devuelve las siguientes filas de datos de DataFrame. Por ejemplo:

import pandas as pd

data = {
    
    
    'name': ['Alice', 'Bob', 'Charlie', 'David'],
    'age': [25, 30, 35, 40],
    'gender': ['F', 'M', 'M', 'M']
}
df = pd.DataFrame(data)
print(df.tail(2))

La salida es:


      name  age gender
2  Charlie   35      M
3    David   40      M

df.describe(): Devuelve estadísticas para un DataFrame. Por ejemplo:


import pandas as pd

data = {
    
    
    'name': ['Alice', 'Bob', 'Charlie', 'David'],
    'age': [25, 30, 35, 40],
    'gender': ['F', 'M', 'M', 'M']
}
df = pd.DataFrame(data)
print(df.describe())

La salida es:


             age
count   4.000000
mean   32.500000
std     6.454972  # 标准差
min    25.000000
25%    28.750000
50%    32.500000
75%    36.250000
max    40.000000

df.groupby(): agrupa el marco de datos por la columna especificada. Por ejemplo:


import pandas as pd

data = {
    
    
    'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emma', 'Frank'],
    'age': [25, 30, 35, 40, 25, 30],
    'gender': ['F', 'M', 'M', 'M', 'F', 'M']
}
df = pd.DataFrame(data)
grouped = df.groupby('age')
for name, group in grouped:
    print(name)
    print(group)

La salida es:

25
    name  age gender
0  Alice   25      F
4   Emma   25      F
30
   name  age gender
1   Bob   30      M
5  Frank   30      M
35
      name  age gender
2  Charlie   35      M
40
    name  age gender
3  David   40      M

df.pivot_table():Creartabla dinámica. Por ejemplo:

import pandas as pd

data = {
    
    
    'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emma', 'Frank'],
    'age': [25, 30, 35, 40, 25, 30],
    'gender': ['F', 'M', 'M', 'M', 'F', 'M'],
    'score': [90, 85, 80, 75, 70, 65]
}
df = pd.DataFrame(data)
pivot_table = df.pivot_table(values='score', index='name', columns='age')
print(pivot_table)

La salida es:

age      25    30    35    40
name                        
Alice  90.0   NaN   NaN   NaN
Bob     NaN  85.0   NaN   NaN
Charlie NaN   NaN  80.0   NaN
David   NaN   NaN   NaN  75.0
Emma   70.0   NaN   NaN   NaN
Frank   NaN  65.0   NaN   NaN

tabla dinámica,Las filas corresponden al índice, las columnas corresponden a las columnas y los valores corresponden a los valores. En el código anterior, el valor en la tabla dinámica es la puntuación, la fila es el nombre y la columna es la edad.

Las tablas dinámicas pueden mostrar datos fácilmente y realizar análisis de datos.

df.merge(): Combinar dos tramas de datos. Por ejemplo:


import pandas as pd

data1 = {
    
    
    'name': ['Alice', 'Bob', 'Charlie', 'David'],
    'age': [25, 30, 35, 40],
    'gender': ['F', 'M', 'M', 'M']
}
data2 = {
    
    
    'name': ['Alice', 'Bob', 'Charlie', 'Emma'],
    'score': [90, 85, 80, 75],
    'grade': ['A', 'B', 'C', 'B']
}
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)
merged = pd.merge(df1, df2, on='name')
print(merged)

La salida es:


      name  age gender  score grade
0    Alice   25      F     90     A
1      Bob   30      M     85     B
2  Charlie   35      M     80     C

En el código anterior, df1 y df2 son dos marcos de datos, ambos tienen el nombre de la columna y se pueden combinar mediante pd.merge(). El marco de datos combinado contiene las columnas comunes y todas las filas en los dos marcos de datos.

Además de las funciones enumeradas anteriormente, la biblioteca de pandas también proporciona muchas otras funciones y métodos, que se pueden utilizar según las diferentes necesidades.

sí, matplotlib

matplotlib es una biblioteca de gráficos para Python que se puede usar para crear varias visualizaciones de datos estáticas, dinámicas e interactivas. Aquí hay algunas funciones y usos de matplotlib comúnmente utilizados:

plt.plot(): Dibuja un gráfico lineal. Por ejemplo:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 1000)
y = np.sin(x)
plt.plot(x, y)
plt.show()

En el código anterior, use la función np.linspace() para generar 1000 puntos de datos igualmente espaciados, luego calcule el valor del seno de estos puntos de datos y finalmente use la función plt.plot() para conectar estos puntos de datos en una línea, y use La función plt.show() lo muestra.

plt.scatter(): Dibuje un diagrama de dispersión. Por ejemplo:

import matplotlib.pyplot as plt
import numpy as np

x = np.random.randn(1000)
y = np.random.randn(1000)
plt.scatter(x, y)
plt.show()

En el código anterior, use la función np.random.randn() para generar 1000 puntos de datos de distribución normal estándar y luego use la función plt.scatter() para dibujar estos puntos de datos en un gráfico de dispersión.

plt.bar(): Dibuje un histograma. Por ejemplo:

import matplotlib.pyplot as plt
import numpy as np

x = ['A', 'B', 'C', 'D', 'E']
y = [20, 35, 30, 25, 40]
plt.bar(x, y)
plt.show()

En el código anterior, la lista x contiene cinco categorías y la lista y contiene las cantidades correspondientes. Use la función plt.bar() para dibujarlas en un histograma.

plt.pie(): Dibuje un gráfico circular. Por ejemplo:


import matplotlib.pyplot as plt

labels = ['A', 'B', 'C', 'D', 'E']
sizes = [20, 35, 30, 25, 40]
plt.pie(sizes, labels=labels, autopct='%1.1f%%')
plt.axis('equal')
plt.show()

En el código anterior, la lista de etiquetas contiene cinco categorías y la lista de tamaños contiene las cantidades correspondientes. Use la función plt.pie() para dibujarlas en gráficos circulares y use el parámetro autopct para establecer el porcentaje de visualización. Use plt. La función axis('equal' ) hace que el gráfico circular sea circular.

plt.hist(): Dibuje un histograma. Por ejemplo:


import matplotlib.pyplot as plt
import numpy as np

x = np.random.randn(1000)
plt.hist(x, bins=20)
plt.show()

En el código anterior, la función np.random.randn() se usa para generar 1000 datos de distribución normal estándar y la función plt.hist() se usa para generar el histograma.

plt.imshow(): Dibuja la imagen. Por ejemplo:

import matplotlib.pyplot as plt
import numpy as np
from PIL import Image

img = Image.open('test.jpg')
plt.imshow(np.array(img))
plt.show()

En el código anterior, use la función Image.open() de la biblioteca PIL para abrir una imagen y luego use la función plt.imshow() para mostrarla.

plt.subplot(): Crea un subgrafo. Por ejemplo:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 1000)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tan(x)

plt.subplot(2, 2, 1)
plt.plot(x, y1)

plt.subplot(2, 2, 2)
plt.plot(x, y2)

plt.subplot(2, 1, 2)
plt.plot(x, y3)

plt.show()

En el código anterior, use la función plt.subplot() para crear un gráfico grande que contenga tres subparcelas, donde la primera subparcela se encuentra en la primera fila y la primera columna, la segunda subparcela se encuentra en la primera fila y la segunda columna, y la tercera subparcela se ubica en la primera fila y segunda columna, las subparcelas ocupan toda la segunda fila. Luego, las diferentes funciones se grafican en las tres subparcelas respectivamente.

Las anteriores son algunas funciones y usos comunes de matplotlib, y hay muchas otras funciones y usos que se pueden usar de manera flexible según las necesidades específicas.

Actualización continua

Supongo que te gusta

Origin blog.csdn.net/qq_54015136/article/details/129516657
Recomendado
Clasificación