La différence entre un tableau et un tableau dans numpy

不言
Libérer: 2018-04-17 11:48:55
original
3571 Les gens l'ont consulté

Ce qui suit est une explication détaillée de la différence entre array et asarray dans numpy. Il a une bonne valeur de référence et j'espère qu'il sera utile à tout le monde. Jetons un coup d'oeil ensemble

Array et asarray peuvent convertir des données structurelles en ndarray, mais la principale différence est que lorsque la source de données est ndarray, le tableau copiera toujours une copie et occupera une nouvelle mémoire, mais pas asarray réunion.

Exemple :

import numpy as np 
 
#example 1: 
data1=[[1,1,1],[1,1,1],[1,1,1]] 
arr2=np.array(data1) 
arr3=np.asarray(data1) 
data1[1][1]=2 
print 'data1:\n',data1 
print 'arr2:\n',arr2 
print 'arr3:\n',arr3
Copier après la connexion

Sortie :

data1: 
[[1, 1, 1], [1, 2, 1], [1, 1, 1]] 
arr2: 
[[1 1 1] 
 [1 1 1] 
 [1 1 1]] 
arr3: 
[[1 1 1] 
 [1 1 1] 
 [1 1 1]]
Copier après la connexion

On peut voir qu'il n'y a aucune différence entre array et asarray, qui copient tous deux les métadonnées.

import numpy as np 
 
#example 2: 
arr1=np.ones((3,3)) 
arr2=np.array(arr1) 
arr3=np.asarray(arr1) 
arr1[1]=2 
print 'arr1:\n',arr1 
print 'arr2:\n',arr2 
print 'arr3:\n',arr3
Copier après la connexion

Sortie :

arr1: 
[[ 1. 1. 1.] 
 [ 2. 2. 2.] 
 [ 1. 1. 1.]] 
arr2: 
[[ 1. 1. 1.] 
 [ 1. 1. 1.] 
 [ 1. 1. 1.]] 
arr3: 
[[ 1. 1. 1.] 
 [ 2. 2. 2.] 
 [ 1. 1. 1.]]
Copier après la connexion

C'est à ce moment-là que la différence entre les deux apparaît

Recommandations associées :

Comment traiter les tableaux booléens dans numpy

Explication détaillée de la différence entre numpy.random.randn() et rand()


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!

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal