Comment stocker plusieurs types de données dans un seul tableau NumPy avec des types de données d'origine préservés ?

DDD
Libérer: 2024-10-21 17:56:45
original
655 Les gens l'ont consulté

How to Store Multiple Data Types in a Single NumPy Array with Preserved Original Data Types?

Stockage de plusieurs types de données dans un seul tableau NumPy

Vous êtes confronté au défi de combiner deux tableaux, l'un contenant des chaînes et l'autre contenant des entiers, dans un seul tableau. Bien que votre approche actuelle consistant à utiliser np.concatenate entraîne la conversion de l'ensemble du tableau en type de chaîne, vous recherchez une solution plus efficace.

Enregistrer les tableaux :

Un Une approche efficace consiste à exploiter les tableaux d’enregistrements. Cela vous permet de créer des « colonnes » qui préservent leurs types de données d'origine. Les tableaux d'enregistrements sont construits à l'aide de la fonction numpy.rec.fromarrays et prennent des tableaux représentant chaque colonne avec leurs noms de champs correspondants.

<code class="python">import numpy as np

a = np.array(['a', 'b', 'c', 'd', 'e'])
b = np.arange(5)

records = np.rec.fromarrays((a, b), names=('keys', 'data'))

print(records)
# rec.array([('a', 0), ('b', 1), ('c', 2), ('d', 3), ('e', 4)], 
#      dtype=[('keys', '|S1'), ('data', '<i8')])</code>
Copier après la connexion

Tableaux structurés :

Un autre L'option consiste à utiliser des tableaux structurés, qui sont déclarés avec un type de données personnalisé. Bien qu'ils ne disposent pas de l'accès aux attributs fourni par les tableaux d'enregistrements, ils offrent une représentation plus efficace.

<code class="python">arr = np.array([('a', 0), ('b', 1)], 
                      dtype=([('keys', '|S1'), ('data', 'i8')]))

print(arr)
# array([('a', 0), ('b', 1)], 
#      dtype=[('keys', '|S1'), ('data', '<i8')])</code>
Copier après la connexion

En employant des enregistrements ou des tableaux structurés en fonction de vos besoins spécifiques, vous pouvez stocker efficacement plusieurs types de données dans un seul NumPy. tableau tout en conservant leurs types d'origine.

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
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!