Maison >développement back-end >Tutoriel Python >Un traitement de données efficace en Python mérite le détour

Un traitement de données efficace en Python mérite le détour

烟雨青岚
烟雨青岚avant
2020-06-16 17:31:592641parcourir

Un traitement de données efficace en Python mérite le détour

Traitement efficace des données à voir en Python

Pandas est un outil de traitement de données très couramment utilisé en Python et très pratique à utiliser. Il est construit sur la structure du tableau NumPy, donc beaucoup de ses opérations sont écrites via les modules d'extension fournis avec NumPy ou Pandas. Ces modules sont écrits en Cython et compilés en C, et sont exécutés en C, garantissant ainsi la vitesse de traitement.

Aujourd'hui, nous allons expérimenter sa puissance.

1. Créer des données

L'utilisation de pandas peut facilement créer des données. Créons maintenant un DataFrame pandas avec 5 colonnes et 1000 lignes :

mu1, sigma1 = 0, 0.1
mu2, sigma2 = 0.2, 0.2
n = 1000df = pd.DataFrame(
    {
        "a1": pd.np.random.normal(mu1, sigma1, n),
        "a2": pd.np.random.normal(mu2, sigma2, n),
        "a3": pd.np.random.randint(0, 5, n),
        "y1": pd.np.logspace(0, 1, num=n),
        "y2": pd.np.random.randint(0, 2, n),
    }
)
  • a1 et a2 : échantillons aléatoires tirés d'une distribution normale (gaussienne).
  • a3 : Entier aléatoire de 0 à 4.
  • y1 : uniformément réparti sur une échelle logarithmique de 0 à 1.
  • y2 : Entier aléatoire de 0 à 1.

génère des données comme indiqué ci-dessous :

2. Tracez l'image

Fonction de traçage Pandas Renvoie un axe de coordonnées matplotlib (Axes), afin que nous puissions personnaliser ce dont nous avons besoin. Par exemple, tracez une ligne verticale et une ligne parallèle. Cela nous sera très bénéfique :

1. Tracez la ligne moyenne

2 Marquez les points clés

import matplotlib.pyplot as plt
ax = df.y1.plot()
ax.axhline(6, color="red", linestyle="--")
ax.axvline(775, color="red", linestyle="--")
plt.show()

Nous pouvons également personnaliser le nombre de tableaux affichés sur un graphique :

fig, ax = plt.subplots(2, 2, figsize=(14,7))
df.plot(x="index", y="y1", ax=ax[0, 0])
df.plot.scatter(x="index", y="y2", ax=ax[0, 1])
df.plot.scatter(x="index", y="a3", ax=ax[1, 0])
df.plot(x="index", y="a1", ax=ax[1, 1])
plt.show()

3. Dessinez un histogramme.

Pandas nous permet d'obtenir la comparaison de forme de deux figures de manière très simple :

df[["a1", "a2"]].plot(bins=30, kind="hist")
plt.show()

Il permet également de dessiner plusieurs figures :

df[["a1", "a2"]].plot(bins=30, kind="hist", subplots=True)
plt.show()

Bien entendu, la génération d'un graphique linéaire n'est pas incluse dans le dessin :

df[['a1', 'a2']].plot(by=df.y2, subplots=True)
plt.show()

4. Ajustement linéaire

Les pandas peuvent également être utilisés pour l'ajustement. Utilisons les pandas pour trouver une ligne droite la plus proche de la figure suivante :

Le La méthode des moindres carrés calcule la ligne droite la plus courte Distance :

df['ones'] = pd.np.ones(len(df))
m, c = pd.np.linalg.lstsq(df[['index', 'ones']], df['y1'], rcond=None)[0]
Dessinez y et la ligne droite ajustée en fonction du résultat des moindres carrés :

df['y'] = df['index'].apply(lambda x: x * m + c)
df[['y', 'y1']].plot()
plt.show()

Merci pour en lisant, j'espère que vous en bénéficierez beaucoup.

Cet article est reproduit à partir de : https://blog.csdn.net/u010751000/article/details/106735872

Tutoriel recommandé : "

Tutoriel python"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer