dire que j'ai une image de Je veux créer un np.array J'ai essayé ceci: p> i get: p> Et au lieu de cela, je voudrais le retour: p> aucune idée? P> p> p> 2x2 code> Â pixels nommés
image_array code>, chaque couleur de pixel est identifiée par une tuple de 3 entrées (RVB), donc la forme de
image_array code> est
2x2x3 code>.
c code> qui a la forme
2x2x1 code> et qui est le dernier Coordonnée est un ensemble vide. P>
4 Réponses :
Chaque fois que vous faites remplissage (SET ()) code>, cela remplira la matrice avec exactement em> même ensemble, car ils se réfèrent au même ensemble. Pour résoudre ce problème, effectuez simplement un ensemble s'il n'y a pas à chaque fois que vous devez ajouter à l'ensemble
c = np.empty(image_array.shape[:2], dtype=set)
if not c[0][1]:
c[0,1] = set([124])
else:
c[0,1].add(124)
print (c)
# [[None {124}]
# [None None]]
Essayez ceci:
import numpy as np x = np.empty((2, 2), dtype=np.object) x[0, 0] = set(1, 2, 3) print(x) [[{1, 2, 3} None] [None None]]
Je pense qu'il veut que son éventail ait des ensembles d'entiers pour une raison quelconque, bien que
OK merci, le problème est venu de c [0] [1] code>. Si je le remplace par
c [0,1] code> Ça fonctionne. Merci
Utilisation de vide code> lorsque vous avez l'intention de définir un seul élément n'est généralement pas une bonne idée. Mais avec
objet code> DTYPE,
vide code> remplit avec
Aucun code>. Dans le cadre de votre réponse, vous devez afficher le
X code résultant>.
Essayez de changer votre ligne c [0] [1] .Ajouter code> à ceci.
c[0][1] = 124
print(c)
Le tableau d'objets doit être rempli d'objets distincts SET () CODE>. Cela signifie les créer individuellement, comme je le fais avec une compréhension de la liste:
In [283]: image = (((1,2,3), (1,0,0)), ((1,1,1), (2,1,2)))
...: image_array = np.array(image)
...:
In [284]: image_array
Out[284]:
array([[[1, 2, 3],
[1, 0, 0]],
[[1, 1, 1],
[2, 1, 2]]])
Voulez-vous dire que chaque élément de votre
C code> devrait être un
définir code>?
Oui c'est ce que je veux dire.
Très bien connexe: Stackoverflow.com/Questtions/240178/...
DTYPE = SET CODE> est vraiment identique que
dtype = objet code>. Ainsi, les éléments, y compris les ensembles, sont stockés de la même manière que dans les listes - par référence.
Le point @ CS95 fait est ce que j'ai expliqué dans ma réponse ci-dessous