Maison  >  Article  >  interface Web  >  Compréhension approfondie des méthodes d'épissage et des utilisations des tableaux numpy

Compréhension approfondie des méthodes d'épissage et des utilisations des tableaux numpy

PHPz
PHPzoriginal
2024-01-26 11:03:16578parcourir

Compréhension approfondie des méthodes dépissage et des utilisations des tableaux numpy

Comprenez la méthode d'épissage des tableaux numpy et les scénarios d'application dans un seul article

Aperçu :
Dans le traitement et l'analyse des données, il est souvent nécessaire d'épisser plusieurs tableaux numpy pour un traitement et une analyse ultérieurs. La bibliothèque numpy fournit une variété de méthodes d'épissage de tableaux. Cet article présentera les méthodes d'épissage de tableaux numpy et leurs scénarios d'application, et donnera des exemples de code spécifiques.

1. Méthode d'épissage de tableau Numpy : la fonction

  1. np.concatenate
    np.concatenate peut assembler deux ou plusieurs tableaux le long de l'axe spécifié pour former un nouveau tableau. La syntaxe est la suivante :
    np.concatenate((a1, a2, ...), axis=0, out=None)

Parmi eux, a1, a2, ... : les tableaux qui doivent être épissés ;
axis : spécifiez l'axe d'épissage, la valeur par défaut est 0, ce qui signifie l'épissage le long du premier axe ;
out : le tableau généré par le résultat d'épissage, s'il n'est pas fourni, un nouveau tableau sera créé et renvoyé.

L'exemple de code est le suivant :
importez numpy en tant que np

a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6]] )

c = np.concatenate((a, b), axis=0)
print(c)

Résultat de sortie :

[[1 2]

[3 4]

[5 6]]

  1. np .vstack et np.row_stack
    La fonction np.vstack empile deux ou plusieurs tableaux ensemble verticalement (lignes) pour former un nouveau tableau. La syntaxe est la suivante :
    np.vstack(tup)

où, tup : le tuple du tableau qui doit être empilé.

La fonction np.row_stack a la même fonction que la fonction np.vstack.

L'exemple de code est le suivant :
importer numpy en tant que np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])

c = np .vstack( (a, b))
print(c)

Résultat de sortie :

[[1 2 3]

[4 5 6]]

  1. np.hstack et np.column_stack
    np.hstack fonctions Combinez deux ou plusieurs tableaux empilés horizontalement (colonne) pour former un nouveau tableau. La syntaxe est la suivante :
    np.hstack(tup)

où, tup : le tuple du tableau qui doit être empilé.

La fonction np.column_stack a la même fonction que la fonction np.hstack, mais peut gérer des tableaux unidimensionnels.

L'exemple de code est le suivant :
importer numpy en tant que np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])

c = np .hstack( (a, b))
print(c)

Résultat de sortie :

[1 2 3 4 5 6]

  1. np.dstack
    La fonction np.dstack divise deux tableaux ou plus dans le sens de la profondeur ( le long des axes Z) empilés pour former un nouveau tableau. La syntaxe est la suivante :
    np.dstack(tup)

où, tup : le tuple du tableau qui doit être empilé.

L'exemple de code est le suivant :
importez numpy en tant que np

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

c = np.dstack((a, b))
print(c)

Résultat de sortie :

[[[1 5]

[2 6]]

[[ 3 7]

[4 8]]]

2. Scénarios d'application

  1. Fusion de données
    Lorsque plusieurs tableaux doivent être fusionnés selon certaines règles pour former un grand tableau, vous pouvez utiliser la méthode d'épissage numpy. Par exemple, dans le machine learning, les ensembles de formation et de test sont souvent séparés et doivent être fusionnés en un seul ensemble de données.

L'exemple de code est le suivant :
importez numpy en tant que np

Supposons que l'ensemble d'entraînement a été chargé dans la variable train_data et que la forme est (m, n1)

Supposons que l'ensemble de test a été chargé dans la variable test_data et la forme est (k, n1)

Fusionner l'ensemble d'entraînement et l'ensemble de test en un seul ensemble de données

data = np.concatenate((train_data, test_data), axis=0)
print(data.shape )

  1. Augmentation des données
    Dans l'apprentissage profond, l'augmentation des données des échantillons d'entraînement est une méthode courante pour améliorer la capacité de généralisation du modèle. Plusieurs échantillons augmentés d'un échantillon peuvent être combinés à l'aide de la méthode d'épissage de numpy.

L'exemple de code est le suivant :
importez numpy en tant que np

Supposez que l'échantillon a été chargé dans la variable sample et que la forme est (n, m)

Effectuez une expansion par retournement horizontal de l'échantillon

flipped_sample = np.fliplr(sample)

Fusionner les échantillons augmentés

augmented_sample = np.hstack((sample, flipped_sample))
print(augmented_sample.shape)

Résumé :
Cet article présente la méthode d'épissage des tableaux numpy et son scénarios d'application. En utilisant la méthode d'épissage de numpy, nous pouvons fusionner plusieurs tableaux pour le traitement et l'analyse des données. Les méthodes d'épissage incluent np.concatenate, np.vstack, np.row_stack, np.hstack, np.column_stack et np.dstack. Vous pouvez choisir la méthode appropriée en fonction des besoins spécifiques. Ces méthodes sont très courantes dans les scénarios d'application tels que la fusion et l'augmentation des données, et peuvent nous aider à mieux traiter et analyser les données.

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:
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