Maison développement back-end Tutoriel Python Obtenez une compréhension plus approfondie des principales fonctionnalités et avantages de la bibliothèque numpy

Obtenez une compréhension plus approfondie des principales fonctionnalités et avantages de la bibliothèque numpy

Jan 19, 2024 am 09:28 AM
优势 numpy 核心特性

Obtenez une compréhension plus approfondie des principales fonctionnalités et avantages de la bibliothèque numpy

Une compréhension approfondie des fonctionnalités et des avantages de base de la bibliothèque numpy nécessite des exemples de code spécifiques

Python est un langage de programmation open source de haut niveau et numpy est une bibliothèque d'extension importante pour python. Numpy est l'abréviation de Numerical Python. Il fournit un puissant objet tableau multidimensionnel et diverses fonctions opérationnelles correspondantes. C'est l'une des bibliothèques de base du calcul scientifique Python. Dans des domaines tels que le traitement des données, l'apprentissage automatique et l'apprentissage profond, numpy joue un rôle important. Cet article fournira une introduction approfondie aux principales fonctionnalités et avantages de la bibliothèque numpy, avec des exemples de code spécifiques.

  1. Objet tableau multidimensionnel ndarray

La structure de données de base de numpy est ndarray (tableau à N dimensions), qui est un objet tableau multidimensionnel efficace. Les types d'éléments des tableaux ndarray doivent être les mêmes, qui peuvent être des entiers, des nombres à virgule flottante, etc., et ils sont stockés en continu en mémoire. Le tableau ndarray possède plusieurs attributs importants, notamment la forme (dimension du tableau), le type (type d'élément), la taille (nombre total d'éléments) et ndim (dimension du tableau).

Ce qui suit est un exemple simple de création d'un tableau ndarray :

import numpy as np
a = np.array([1, 2, 3])
print(a)
print(a.shape)
print(a.dtype)
Copier après la connexion

Le résultat de sortie est :

[1 2 3]
(3,)
int64
Copier après la connexion

Nous pouvons également modifier les dimensions du tableau ndarray via la méthode reshape() :

b = np.array([[1, 2, 3], [4, 5, 6]])
print(b.shape)
c = b.reshape(3, 2)
print(c)
Copier après la connexion

Le résultat de sortie est :

(2, 3)
[[1 2]
 [3 4]
 [5 6]]
Copier après la connexion
  1. Opération vectorielle

Une autre fonctionnalité de numpy est l'opération de vectorisation, qui est une fonctionnalité extrêmement importante. Elle améliore non seulement considérablement l'efficacité du calcul, mais simplifie également la difficulté d'écriture de code. Par exemple, nous voulons ajouter un certain nombre à chaque élément d'un tableau ndarray. Si nous n'utilisons pas d'opérations de vectorisation, nous devons écrire une boucle de ce type qui est souvent extrêmement inefficace et difficile à maintenir. En utilisant l'opération de vectorisation de numpy, nous n'avons besoin d'écrire qu'une seule ligne de code pour y parvenir :

import numpy as np
a = np.array([1, 2, 3])
b = a + 1
print(b)
Copier après la connexion

Le résultat de sortie est :

[2 3 4]
Copier après la connexion
  1. Broadcast

La fonction de diffusion de Numpy nous permet de calculer des tableaux de différentes formes, ce qui est également le clé des opérations de vectorisation de numpy. Les règles de diffusion sont très simples : si les longueurs des axes des dimensions du bord arrière (c'est-à-dire les dimensions à partir de la fin) de deux tableaux correspondent, ou si la longueur de l'un d'eux est 1, ils sont considérés comme compatibles avec la diffusion. La diffusion se fera sur des dimensions manquantes ou de longueur 1.

Ce qui suit est un exemple simple de diffusion :

a = np.arange(4)
b = np.ones(3)
c = a[:, np.newaxis] + b
print(c)
Copier après la connexion

Le résultat de sortie est :

[[1. 1. 1.]
 [2. 2. 2.]
 [3. 3. 3.]
 [4. 4. 4.]]
Copier après la connexion

Dans l'exemple ci-dessus, nous avons créé un tableau unidimensionnel a et un tableau unidimensionnel b avec des dimensions différentes. Afin de leur permettre d'effectuer des opérations de vectorisation, nous utilisons la fonctionnalité de diffusion pour ajouter une nouvelle dimension au tableau a afin que les dimensions de a et b soient les mêmes.

  1. Fonction ufunc

La fonction ufunc de numpy est un ensemble de fonctions qui fonctionnent sur les tableaux ndarray, notamment : ajouter (ajouter), soustraire (soustraire), multiplier (multiplier), diviser (diviser) et trouver le reste (reste) etc. La particularité de ces fonctions est qu'elles peuvent opérer sur l'ensemble du tableau sans boucle. De plus, la fonction ufunc prend également en charge la fonction de diffusion, qui peut fonctionner sur deux tableaux de formes différentes, ce qui est très pratique.

Voici un exemple simple d'une fonction ufunc :

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = np.add(a, b)
print(c)
Copier après la connexion

Le résultat est :

[5 7 9]
Copier après la connexion
  1. Découpage et indexation

Le découpage et l'indexation dans numpy sont similaires au découpage et à l'indexation en python. Étant donné que les tableaux ndarray sont multidimensionnels, le découpage et l'indexation de numpy sont plus flexibles. Nous pouvons utiliser l'instruction a[i] pour accéder au i-ème élément du tableau numpy, ou nous pouvons utiliser a[i:j] pour obtenir le i-ème au j-ème élément du tableau. De plus, nous pouvons utiliser des ellipses (...) pour représenter toutes les autres dimensions. Pour les tableaux multidimensionnels, nous pouvons utiliser a[i, j] pour obtenir les éléments de la i-ème ligne et de la j-ème colonne, a[:, j] pour obtenir tous les éléments de la j-ème colonne, a [i, :] pour obtenir tous les éléments de la i-ième ligne, etc.

Ce qui suit est un exemple simple de découpage et d'indexation d'un tableau multidimensionnel :

a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(a[0, 1])
print(a[1, :])
print(a[:, 0:2])
Copier après la connexion

Le résultat est :

2
[4 5 6]
[[1 2]
 [4 5]
 [7 8]]
Copier après la connexion
  1. Génération de nombres aléatoires

Numpy fournit également un certain nombre de fonctions pour générer des nombres aléatoires, notamment : np.random .rand(), np.random.randn(), np.random.randint(), np.random.shuffle(), etc. Ces fonctions peuvent être utilisées dans des domaines tels que l'analyse des données, la simulation et l'apprentissage automatique.

Ce qui suit est un exemple simple de génération de nombres aléatoires :

a = np.random.rand(3)
b = np.random.randn(3)
c = np.random.randint(0, 10, size=(2, 3))
print(a)
print(b)
print(c)
Copier après la connexion

Le résultat est :

[0.1688015  0.15220492 0.44022309]
[-0.09097023  1.19200587  1.17187612]
[[5 8 8]
 [0 9 1]]
Copier après la connexion

Résumé

numpy est une bibliothèque très puissante et flexible avec de nombreuses fonctionnalités et avantages de base, notamment : des objets de tableau multidimensionnels efficaces, Opérations de vectorisation et diffusion, fonctions ufunc, découpage et indexation, génération de nombres aléatoires, etc. Dans les domaines liés à la science des données et à l'intelligence artificielle, numpy joue un rôle important et irremplaçable. Nous devons comprendre en profondeur l'utilisation et la mise en œuvre du code de numpy, maîtriser ses principes de base et ses opérations courantes, et les appliquer dans le travail et les études réels pour améliorer l'efficacité et la précision.

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Mise à niveau de la version numpy : un guide détaillé et facile à suivre Mise à niveau de la version numpy : un guide détaillé et facile à suivre Feb 25, 2024 pm 11:39 PM

Comment mettre à niveau la version numpy : tutoriel facile à suivre, nécessite des exemples de code concrets Introduction : NumPy est une bibliothèque Python importante utilisée pour le calcul scientifique. Il fournit un puissant objet tableau multidimensionnel et une série de fonctions associées qui peuvent être utilisées pour effectuer des opérations numériques efficaces. À mesure que de nouvelles versions sont publiées, de nouvelles fonctionnalités et corrections de bugs sont constamment disponibles. Cet article décrira comment mettre à niveau votre bibliothèque NumPy installée pour obtenir les dernières fonctionnalités et résoudre les problèmes connus. Étape 1 : Vérifiez la version actuelle de NumPy au début

Analyse des caractéristiques et avantages du langage Go Analyse des caractéristiques et avantages du langage Go Apr 03, 2024 pm 10:06 PM

Caractéristiques du langage Go : Haute concurrence (goroutine) Récupération automatique des déchets Simplicité multiplateforme Modularité Avantages du langage Go : Hautes performances Sécurité Évolutivité Prise en charge communautaire

Analyse approfondie : les avantages et les inconvénients de jQuery Analyse approfondie : les avantages et les inconvénients de jQuery Feb 27, 2024 pm 05:18 PM

jQuery est une bibliothèque JavaScript rapide, petite et riche en fonctionnalités, largement utilisée dans le développement front-end. Depuis sa sortie en 2006, jQuery est devenu l'un des outils de choix pour de nombreux développeurs, mais dans les applications pratiques, il présente également certains avantages et inconvénients. Cet article analysera en profondeur les avantages et les inconvénients de jQuery et l'illustrera avec des exemples de code spécifiques. Avantages : 1. Syntaxe concise La conception syntaxique de jQuery est concise et claire, ce qui peut grandement améliorer la lisibilité et l'efficacité d'écriture du code. Par exemple,

Quels sont les avantages et les inconvénients du déploiement d'applications PHP utilisant une architecture sans serveur ? Quels sont les avantages et les inconvénients du déploiement d'applications PHP utilisant une architecture sans serveur ? May 06, 2024 pm 09:15 PM

Le déploiement d'applications PHP à l'aide d'une architecture sans serveur présente les avantages suivants : sans maintenance, paiement à l'utilisation, développement hautement évolutif et simplifié et prise en charge de plusieurs services. Les inconvénients incluent : le temps de démarrage à froid, les difficultés de débogage, le verrouillage du fournisseur, les limitations des fonctionnalités et les défis d'optimisation des coûts.

Découvrez les avantages et les scénarios d'application du langage Go Découvrez les avantages et les scénarios d'application du langage Go Mar 27, 2024 pm 03:48 PM

Le langage Go est un langage de programmation open source développé par Google et lancé pour la première fois en 2007. Il est conçu pour être un langage simple, facile à apprendre, efficace et hautement simultané, et est favorisé par de plus en plus de développeurs. Cet article explorera les avantages du langage Go, présentera quelques scénarios d'application adaptés au langage Go et donnera des exemples de code spécifiques. Avantages : Forte concurrence : le langage Go prend en charge de manière intégrée les threads-goroutine légers, qui peuvent facilement implémenter une programmation simultanée. Goroutin peut être démarré en utilisant le mot-clé go

Explication détaillée des avantages et de l'utilité du serveur Golang Explication détaillée des avantages et de l'utilité du serveur Golang Mar 20, 2024 pm 01:51 PM

Golang est un langage de programmation open source développé par Google. Il est efficace, rapide et puissant et est largement utilisé dans le cloud computing, la programmation réseau, le traitement du Big Data et d'autres domaines. En tant que langage statique fortement typé, Golang présente de nombreux avantages lors de la création d’applications côté serveur. Cet article analysera en détail les avantages et l'utilité du serveur Golang et illustrera sa puissance à travers des exemples de code spécifiques. 1. Le compilateur Golang hautes performances peut compiler le code en code local

Fonctionnalités et avantages monothread de Golang Fonctionnalités et avantages monothread de Golang Mar 18, 2024 am 11:51 AM

Fonctionnalités et avantages monothread de Golang Avec le développement en plein essor d'Internet et des applications mobiles, la demande de langages de programmation hautes performances et à haute concurrence augmente. Dans ce contexte, le langage Go (Golang en abrégé) a été développé par Google et lancé pour la première fois en 2009, et est rapidement devenu populaire parmi les développeurs. Golang est un langage de programmation open source qui utilise le typage statique et la conception simultanée. L'un de ses plus grands avantages est sa fonctionnalité monothread. Golang adopte le modèle de concurrence de Goroutine.

Exploration approfondie des avantages et de la valeur du langage Go Exploration approfondie des avantages et de la valeur du langage Go Mar 27, 2024 pm 10:18 PM

Le langage Go (également connu sous le nom de Golang) est un langage de programmation développé par Google qui a beaucoup retenu l'attention depuis sa première version. Il est conçu pour augmenter la productivité des programmeurs et répondre à des besoins de développement logiciel de plus en plus complexes. Le langage Go présente de nombreux avantages et valeurs exceptionnels. Cet article explorera ces avantages en profondeur et fournira des exemples de code spécifiques pour démontrer sa puissance. 1. Avantages de la programmation simultanée En tant que langage de programmation moderne, Go dispose de puissantes capacités de programmation simultanée intégrées. Cela passe par des goroutines et des canaux

See all articles