CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[Python] Problème avec Numpy

Malysz
Malysz
Niveau 6
29 avril 2013 à 23:55:58

Je cherche la solution à mon problème depuis ce matin mais j'y arrive pas...

J'ai une matrice, disons [[1 0 1] [0 1 0] [0 1 1]] au hasard, que je représente ici comme:

  • - *

- * -
- * *

j'aimerais pouvoir extraire une sousmatrice carrée à partir d'un certain indice qui sera le centre de la sous matrice et en mettant comme nul les indices hors champ. Par exemple, getSubArray(indice=(0,0), taille=3) devrait donner:
- - -
- * -
- - *

Et sinon, une version periodique (circulaire) m'intéresse aussi. La même fonction en mode circulaire donnerait (sauf erreur) :

  • - *
    • -

- - *

J'ai essaye en faisat maMatrice[indiceDepartX:indiceFinX, indiceDeparX:indiceFinY], mais dès qu'un indice est négatif un tableau vide est renvoyé.

Merci !

chris_27
chris_27
Niveau 10
30 avril 2013 à 00:02:13

Les exemples sont faux, ou c'est moi qui n'est pas compris ce que tu voulais ? :(

PierreBrun
PierreBrun
Niveau 3
30 avril 2013 à 00:36:00

Alors le deuxième c'est possible qu'il soit faux, mais le premier non.

Pour clarifier, dans le premier cas (non périodique), c'est comme si la matrice initiale était entourées de bordures de zéros, comme ça quand on extrait comme dans mon exemple une sous matrice de taille 3 dont le centre est constitué par le coté en haut à gauche de l'ancienne matrice, on obtient bien ce que j'ai mis...

Je sais pas si c'est mieux dit.

PierreBrun
PierreBrun
Niveau 3
30 avril 2013 à 12:43:31

Pour mieux illustrer mon problème:

En bleu ce que ferait ma fonction en mode non-périodique, pour une taille de sous-matrice de 4.

En rouge ce que ferait ma fonction en mode périodique, pour une taille de 3:

https://image.noelshack.com/fichiers/2013/18/1367318515-exemple.jpg

Note: j'ai oublié de préciser : il faudrait faire ça dans un esprit numpy. Je peux faire ma fonction en faisant une double boucle, mais ça ruine tous mes efforts de cohérence précédents dans le programme.

PierreBrun
PierreBrun
Niveau 3
30 avril 2013 à 12:44:53

Edit : pardon, en bleu pour une taille de 3 lignes et 4 colonnes (ça marche aussi avec des tailles non-carrées)

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment