Maison > développement back-end > Tutoriel Python > Comment convertir efficacement les DataFrames Pandas en tableaux NumPy ?

Comment convertir efficacement les DataFrames Pandas en tableaux NumPy ?

Patricia Arquette
Libérer: 2024-12-20 06:15:10
original
167 Les gens l'ont consulté

How to Efficiently Convert Pandas DataFrames to NumPy Arrays?

Convertir la trame de données Pandas en tableau NumPy


Pourquoi df.to_numpy() est la méthode recommandée


L'utilisation de df.to_numpy() est la méthode recommandée car elle fournit un moyen cohérent et fiable d'obtenir des tableaux NumPy à partir d'objets pandas. Il est défini sur les objets Index, Series et DataFrame et, par défaut, il renvoie une vue des données sous-jacentes, ce qui signifie que toute modification apportée au tableau NumPy sera également reflétée dans l'objet pandas. Si une copie des données est nécessaire, le paramètre copy=True peut être utilisé.


Il est important de noter que df.values ​​ne sera pas obsolète dans la version actuelle de pandas, mais il est recommandé d'utiliser df.to_numpy() pour le nouveau code et de migrer vers la nouvelle API dès que possible.


Pour conserver les types lors de la conversion d'un dataframe pandas en tableau NumPy, la méthode DataFrame.to_records() peut être utilisée.


importer des pandas en tant que pd<br>importer numpy en tant que np</p>
<p>index = [1, 2, 3, 4, 5, 6, 7]<br>a = [np.nan, np.nan, np.nan, 0.1, 0.1, 0.1, 0.1] <br>b = [0,2, np.nan, 0,2, 0,2, 0,2, np.nan, np.nan]<br>c = [np.nan, 0.5, 0.5, np.nan, 0.5, 0.5, np.nan]<br>df = pd.DataFrame({'A' : a, 'B' : b, 'C' : c}, index=index)<br>df = df.rename_axis('ID')</p>
<h1>Convertir le DataFrame en un tableau NumPy avec des types préservés</h1>
<p>array = df.to_records()</p>
<h1>Imprimer le NumPy array</h1>
<p>print(array)<br>

La sortie du code est la suivante :


<br> rec.array([('ID', 'index', 'A', 'B', 'C')]</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">           [1, 'a', nan, 0.2, nan],
           [2, 'b', nan, nan, 0.5],
           [3, 'c', nan, 0.2, 0.5],
           [4, 'd', 0.1, 0.2, nan],
           [5, 'e', 0.1, 0.2, 0.5],
           [6, 'f', 0.1, nan, 0.5],
           [7, 'g', 0.1, nan, nan]),
      dtype=[('ID', '<i8'), ('index', 'O'), ('A', '<f8'), ('B', '<f8'), ('C', '<f8')])
Copier après la connexion


Comme vous pouvez le voir, le tableau NumPy préserve les types des colonnes dans le DataFrame.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal