Remplacer des valeurs dans un tableau par des 1

Bonjour,
J'ai un tableau 2D de ce type :
0 0 0 125 148 198 0 0 0
0 0 153 148 135 0 0 0
0 0 0 0 0 0 217 239 0 0 0
0 0 0 0 143 286 0 0 0 0 0
et un tableau 1D de ce type :
-0.09
-0.05
-0.07
-0.06
-0.03
-0.05
-0.08
-0.04
-0.03
-0.02
Ce que je veux c'est remplacer les valeurs de mon tableau 2D par mes valeurs de mon tableau 1D. Et je veux que ces valeurs soient exactement à la même place dans le tableau 2D.
Ce que je pensais faire, c'est : dans mon tableau 2D, remplacer toutes les valeurs différentes de 0 par des 1 de façon à créer un "masque" de 1. Ensuite lui dire de remplacer mes 1 par les valeurs de mon tableau 1D en remplissant de gauche à droite.
Mais je n'arrive pas à le faire, pouvez vous m'aider ?
ou peut-être avez-vous une autre méthode ?
(j'utilise Labview 2010)
Résolu !
Accéder à la solution.

voila, rapido et sans chercher à faire des cabriolles.
et comme dit JB ... "que faire si" ...
ici, si le 2D est plus grand, les valeurs exédentaires seront remplacées par des "0"
Maintenant ... comme dab ... je suis certain qu'il y " plus simple".
avec 2 portes nand et 1 inverseur  
ici, c'est du vite fait, mais ça tourne.

Similar Messages

  • Rechercher uninterval​le de valeur dans un tableau

    Bonjour,
    je voudrai savoir comment rechercher un intervalle de valeur dans un tableau par exemple je recherche les valeurs comprises entre 1.90 et  2.10 et je veux que labview me sorte le numéro de la ligne ou se trouve la première valeur comprise entre 1.90 et 2.10
    merci ,
    Rémi

    Re -
    Je ne comprends pas votre phrase concernant l'auto indexation.
    Vous trouverez ci joint un vi effectuant l'opération demandé avec la description que j'ai faites précédemment, ainsi qu'une seconde méthode, en câblant directement le tableau sur le vi "dans la gamme" puis une recherche du premier indice 'vrai'
    Cdlt,
    Pièces jointes :
    Sans titre 1.vi ‏9 KB

  • Probleme insertion valeurs dans un tableau

    Bonjour,
    Je rencontre un petit probleme sous Labview 7.1.
    J'obtient des valeurs RMS d'un signal. J'aimerai faire une moyenne de 20 valeurs prisent toute les 1/4 ou 1/2 secondes. Le probleme est que je n'arrive pas a inserer ces valeurs dans mon tableau, la valeur precedente est remise a zero.
    De plus, quand j'initialise mon tableau en dehors de ma boucle, je ne peut pas raccorder mon initialized array car le format n'est pas le meme.
    merci.
    Attachments:
    test_file_record_4.vi ‏682 KB

    Pour ne pas perdre la dernière valeur entrée dans le tableau, il faut utiliser un registre à décalage.
    Le pb de connection est du à l'autoindexation  (clic droit sur le point d'entrée...). Par défaut les boucles For autoindexent les entrées de type tableau. C'est l'inverse avec les boucles while.
    J'ai corrigé et fait un peu de ménage dans votre vi.
    Ceci dit, je ne pense pas que vous arriviez ainsi à calculer votre moyenne... il faudra probablement revoir votre algorithme .
    Chilly Charly    (aka CC)
             E-List Master - Kudos glutton - Press the yellow button on the left...        
    Attachments:
    test_file_record_4[1].vi ‏703 KB

  • Enregistrer des valeurs dans un tableau

    Bonjour
    J'utilise LabView 2011 et je souhaite enregistrer les valeurs que me retourne mon codeur incrémental dans un tableau, qui ensuite les affiche sur un graphe.
    Comme ca ne marchait pas, je me suis aidé de l'aide labview :
    J'ai donc défini une taille fixe pour tout les tableaux, et également coché "Pré-allouer les tableaux et chaines automatiquement".
    Cependant ça m'affiche encore comme erreur que mes fils et tableaux doivent être de taille fixe dans la cible actuelle.
    Pourriez-vous m'aider svp ?
    Merci beaucoup

    Bonjour
    Effectivement la cible est le compactRIO 9075.
    En fait ce que je veux faire, c'est enregistrer le signal du codeur, uniquement lorsque la position du moteur varie.
    C'est-à-dire que je voudrais voir tous les signaux que lorsqu'ils varient, puis que l'enregistrement s'arrête quand il n'y a plus de variations.
    Le VI que j'ai codé est en pièce jointe.
    Merci à vous.
    Pièces jointes :
    element3.vi ‏139 KB

  • Modification de valeur dans un tableau

    Bonjour,
    Contexte :
    Je souhaite pouvoir remplir des données dans un tableau en appuyant sur le bouton suivant (incrémente l'indice)
    Revenir en arrière en appuyant sur le bouton précédent (donc à l'indice précédent) et modifier ses valeurs en appuyant sur le  bouton suivant.
    Problème :
    Dans mon VI cela fonctionne, mais ajoute des données supplémentaires à chaque fois que l'on appuie sur suivant, ce que je ne souhaite pas.
    Cordialement
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    Tableau de cluster.vi ‏28 KB

    Bonjour,
    Voila une version modifié de ton VI qui doit répondre à ton problème.
    L'erreur venait du fait que quand tu cliques sur suivant tu ajoutes toujours un élément au tableau. J'ai donc rajouter une condition qui vérifie si on est au dernier élément du tableau et dans si c'est vrai, on ajoute une valeur, sinon on la remplace.
    Cordialement.
    .mesLeft{float:left} .mesInfo{border-left:solid 1px #989898;font-size:x-small;color:#989898} .mesLogo{float:right;opacity:0.18} .mesLogo:hover{opacity:0.9}
    Maxime R.  
      CLD - Certified LabVIEW Developer / Développeur LabVIEW Certifié  
      CLAD - Certified LabVIEW Associate Developer   
    Pièces jointes :
    Tableau de cluster Modifie.vi ‏29 KB

  • Remplacer 2 portions dans un tableau 1 d

    Bonjour à tous, 
    voilà petite question, j'ai un tableau 1 d de la forme suivante : 
    0
    0
    0
    0
    0
    Je souhaite remplacer certains de ces valeurs, notamment de la sorte : 
    1
    1
    0
    1
    1
    en définissant les 2 indices de départ et la proportion de remplacement .
    Cordialement

    Salut Geoff,
    Connais-tu la taille de ton tableau de base tout le temps ?
    Si oui, ca devient assez simple, il suffit :
    1. Pour la première partie du problème, tu l'as très bien fait, tu ajoutes simplement le tableau de 1 grâce à "Insérer dans un tableau" à l'indice 0.
    2. Pour la seconde partie du problème, il suffit de prendre la taille du tableau de base, la taille du tableau de 1, de soustraire les 2 tailles pour savoir à quel indice commencer à insérer le tableau de 1. De cette façon, tu arrives à modifier les dernières cases de ton tableau...
    En espérant avoir compris ton problème !
    Bilsix.
    Pièces jointes :
    zzz.jpg ‏22 KB
    zzz1.jpg ‏14 KB

  • Remplacer des valeurs dans un tableau

    Bonjour,
    Je souhaite réaliser un tableau de 10 cases. Les cases sont remplies avec l'aide d'une boucle for. Mon problème est que je réinitialise le tableau à chaque fois que la boucle est finie. Ce que je voudrai c'est que au redémarrage de la boucle For, je remplisse le tableau à partir de la case 1 sans à chaque fois réinitialiser le tableau. Ceci veut dire que tant qu'une case n'est pas remplacée, elle garde la valeur qu'elle avait lors de la précédente boucle.
    Pouvez-vous m'aider ?
    Résolu !
    Accéder à la solution.

    Voici un exemple, j'espère que sa répond à la question
    Rodéric L
    Certified LabVIEW Architect
    Pièces jointes :
    exemple.vi ‏9 KB

  • Stockage de données numériques dans un tableau pour pouvoir les traiter

    Bonjour,
    Je suis actuellement en stage, et mon sujet est : "Automatisation d'un banc de mesure du bruit émis". Je travaille essentiellement avec LabVIEW, et j'ai une question au niveau des tableaux. Alors en faite, j'utilise un analyseur de spectre et je souhaite récuperer le bruit. La fonction pour récuperer le bruit se trouve dans une boucle while et ressort seulement une donnée numérique par boucle, ce que je souhaite c'est donc de pouvoir la stocker à chaque boucle dans un tableau, puis de faire la moyenne de tableau, cependant je n'arrive pas à effectuer cela, j'ai essayé de créer un tableau mais je ne peux pas lui mettre en entrée une valeur à chaque fois, donc si vous savez comment je pourrais procéder je suis preneur !
    Je vous remercie d'avance,
    Cdt,
    Florian
    Solved!
    Go to Solution.

    Bonjour Flod29,
    Une solution serait de créer un registre à décalage sur un tunnel de sortie de votre boucle afin de récupérer les valeurs des boucles précédentes et de calculer à partir de ces valeurs une moyenne (cf Capture1).
    Une deuxième option serait de changer le mode du tunnel de sortie de votre boucle en Indexation afin de récupérer toute les valeurs dans un tableau en sortie de boucle (cf Capture 2).
    Je vous souhaite une bonne journée,
    Cordialement,
    Sabri JATLAOUI - Certified LabVIEW Developer
    Attachments:
    Capture 1.PNG ‏5 KB
    Capture 2.PNG ‏9 KB

  • Randomiser la position d'éléments dans un tableau

    Bonjour,
    Je souhaiterais rendre aléatoire une série de valeurs dans un tableau. Par exemple j'ai 6 valeurs dans un tableau 1,2,3,4,5, et 6. Je souhaite que le tableau me sorte ces 6 valeurs dans un ordre aléatoire. Comment puis-je faire? Merci d'avance pour votre aide.
    Résolu !
    Accéder à la solution.

    Voilà une petite traduction en code, en espérant que çà correponde à ce que tu attendais.
    Cordialement
    Benoît C.
    Certified LabVIEW Associate Developer

  • Remplir des valeurs générer dans un tableau colonne après colonne

    je génère des valeurs aléatoires et je veux les enregistrer toutes dans un tableau, où chaque génération dans une nouvelle colonne. ( mon programme actuel écrase les valeurs précédentes :-( )
    ci-joint  mon petit exemple.
    merci d'avance.
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    teste LV.png ‏12 KB

    penser aux kudos,
    penser à se relire aussi, histoire de corriger les fautes d'orto-graffe ... ou les dérabages d'égriture.
    ça fait plus "goli" ... sorry ... "joli"  
    avec tous les kudos que tu te prends Cisco, tu dois penser à soigner ton "image" maintenant ( re -   )
    allez ... y'a du vrai dans "tout ça" ... mais c'est pour taquiner aussi   

  • Supprimer des nombres premiers dans un tableau 2D d'entiers

    Bonjour,
    J'ai créé un programme qui génère des nombres dit fortement probablement premiers : ce sont des entiers qui sont presque tout le temps premiers : je souhaiterai conserver uniquement ceux qui ne sont pas premiers (on dit qu'ils sont pseudo-premiers-forts).
    Voici la partie de programme qui est censée supprimer ces nombres premiers de mon tableau 2D d'entiers :
    Comme vous pourrez le constater en exécutant le programme en pièce jointe, je dispose d'un sous VI qui est une fonction booléenne qui renvoie vrai si un nombre est premier, et faux sinon ("Nb premier" sur le diagramme). Je ne comprend pas pourquoi cette partie de code n'a aucun effet. La première colonne de mon tableau est constituée d'entiers (ce que j'appelle la "base").
    J'ajoute les deux sous-programmes que j'utilise en pièces jointes, au cas où (mais je n'ai pas de problème avec eux).
    Pourriez-vous m'indiquer une méthode sûre pour supprimer des nombres premiers d'un tableu d'entiers 2D ?
    Je vous en remercie vivement par avance !
    Solved!
    Go to Solution.
    Attachments:
    base de nombres pseudo-premiers-forts.vi ‏32 KB
    test de primauté.vi ‏17 KB
    exponentiation modulaire rapide.vi ‏16 KB

    Bonsoir JB.
    Je vous remercie pour vos conseils : ils m'ont permis de résoudre mon problème (le tableau se calcule en quelques secondes).
    J'ai simplement dû changer un noeud "supprimer un élément d'un tableau" par un noeud "remplacer un élément d'un tableau" (par la valeur 0 qui convenait bien) afin de tenir compte de votre remarque N°2, et pour supprimer les zéros de mon tableau, j'ai utilisé un vi que j'ai trouvé sur le site de NI : 2D Array Search & Delete.vi : je l'ai très légèrement modifié en supprimant la temporistaion de 5 ms afin que le calcul soit plus rapide.
    Même si ce n'est pas parfait, je met à disposition des autres utilisateurs ce travail sous la forme des deux programmes en pièces jointes.
    Quant à mon programme, je vais en faire un exécutable (pour présenter mes résultats).
    Cordialement, Thomas
    Attachments:
    base de nombres pseudo-premiers-forts.vi ‏34 KB
    2D Array Search & Delete.vi ‏18 KB

  • Filtre automatique des données dans un tableau sur diadem

    Bonjour à tous,
    Débutant sous Diadem, je souhaiterais filtrer des données dans un tableau sous diadem 2012 (style filtre automatique excel).Je possède trois colonnes: Date / Valeur / État (1=bon ; 3=mauvais). Je souhaite afficher uniquement les valeurs avec un état bon (état = 1) et ainsi pouvoir exploiter par la suite ces valeurs (courbes, statistiques...).
    - Existe-t-il un filtre rapide pouvant répondre à ce besoin?
    - Peut on sélectionner automatiquement plusieurs lignes avec une valeur connue et les supprimer (exemple ici: sélectionner toutes les lignes avec un état à 3)?
    - Sinon existe-t-il une autre solution ?
    D'avance merci pour vos réponses
    Nicolas
    Solved!
    Go to Solution.

    Re bonjour,
    Je pense avoir trouvé une solution pour afficher uniquement les valeurs souhaitées dans ce cas.
    - Créer une nouvelle colonne "Valide"
    - Ouvrir calculator et saisir la formule suivante : Ch("[1]/Valide")=Ch("[1]/Valeur")*(Ch("[1]/Etat")+CTNV(Ch("[1]/Etat")>1))
    On obtient ainsi une nouvelle colonne "Valide" dans laquelle on renvoie les valeurs de la colonne "Valeur" si "Etat" est 1; sinon on renvoie "NoValue" pour les états supérieurs à 1. On peut ensuite travailler et visualiser des graphes à l'aide de cette dernière colonne.
    Espérant avoir apporté une aide (ou des pistes) à d'autres personnes dans cette situation.
    Nicolas

  • Enlever des valeurs d'un tableau à partir d'un seuil

    Bonjour
    Exxiste t'il un Vi qui me permet d'enlever des valeurs d'un tableau en lui donnant un seuil .
    je m'explique : des données décimales de tensions analogiques rentrent dans mon tableau dans une plage de 0 à 10 , je souhaiterai ensuite enlever toutes  les valeurs,  par exemples,  supérieurs à 3,25 .
    Merci.
    Résolu !
    Accéder à la solution.

    Bonjour
      Je ne peux lire le VI de Bastien mais je te propose ceci :
      Dans une boucle for : comparer les valeurs avec la valeur seuil
    La fonction select attribue 0 si la valeur est plus basse que la valeur seuil
      La deuxième boucle for enlève toute les valeurs 0 du tableau en utilisant les fonctions search 1D array et Delete from array.
    L'image devrait t'éclairer.
    Francis
    Pièces jointes :
    tableau.JPG ‏57 KB

  • Récupérer la valeur lue par une commande dans un tableau

    Bonjour à tous,
    Je vous explique mon problème : je récupère un tableau de valeurs. J'aimerais envoyer les valeurs de ce tableau dans une commande qui permettra alors de modifier la valeur de la fréquence en fonction de ce tableau de valeurs. 
    Seul soucis : Les fréquences générées sont bel et bien toutes envoyées par la commande (Vérification à l'oscilloscope, tout va bien). Par contre, sous labview je ne peux pas afficher ma fréquence maximale dans le tableau final (il y a apparition du caractère # dans la première case). Comment faire pour récupérer toutes les valeurs envoyées par mes commandes dans le tableau final (avec la fréquence maximale qui apparait dans le tableau au final). J'ai beau cherché je vois pas comment faire...
    Exemple : Frequence min = 30 Frequence max = 300
    Je me retrouve avec un Tableau de 30 40 50 60 70 80 90 100 et 200 mais j'aimerai que 300 apparaisse (en supprimant si possible le caractère # ?)
    J'espère que j'ai pu m'exprimer de manière claire, je vous envoie ci-joint mon programme en intégralité.
    En vous remerciant.
    Cordialement,
    Reborn
    Pièces jointes :
    Detection synchrone.vi ‏44 KB

    Bonjour,
    Merci d'avoir posté sur le forum NI.
    Pourriez vous poster un VI simplifié reproduisant l'erreur que vous rencontrez (sans utiliser les VI de communication ou autre) afin qu'ils soit plus simple pour les membres de cette communauté de pouvoir vous aider?
    Cordialement,
    Nicolas M.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Journées Techniques LabVIEW 2012 : du 27 septembre au 22 novembre
    2 sessions en parallèle : Débuter a...

  • Remplacer un texte commencant par 0,00--- dans un tableau de texte

    Bonjour à tous,
    J'ai besoin de remplacer un texte commencant par <0,00-- (ce qui veut dire que je ne connais pas la fin) par 0. Ce remplpacement a lieu dans un tableau de texte 2D ou 1d c pareil pour moi.
    Pouvez vous m'aidez
    Ben
    Solved!
    Go to Solution.

    Bigben84 wrote:
    HI,
    Thank you for your answered, the problem is that i d'on't know the end of my string. That means i can't compare string against string.
    What i want is scan my array of string to find all the string starting by <0,000, then -- 2digits. And then remplace all the digits of my string by 0
    example
    <0,00030 give me 0
    <0,00066 give me 0
    then if i can managed to be able to do somethings like: Ben----- =0
    Example
    Karim          Mathieu            Pawel           Benjamin
    give me 
    Karim          Mathieu            Pawel           0
    I hope you understand me better.
    BEN
    So to claify that last part...
    If you know how to handle the "<0,00030 give me 0" then you will be able the similar challenge of find a string like "Ben" inside the word Benjamin and able to handle that as well.
    is that correct?
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

Maybe you are looking for

  • Cancellation of 122 for Sub contracting PO

    Dear Sir/mam Child item send to vendor through 541and when Parent material is received we do migo 101 for Parent Material and stock is posted to quality,if accpeted it is in unrestricted but if rejected we post to return delivery and mvt type 122.Can

  • PNG Display Problem in DW CS3

    Does anyone else have a problem with DW CS3 displaying PNGs with 8 bit colour and no transparency? I'm seeing them corrupted whether they're made in Fireworks or Corel PhotoPaint. They display correctly in all other programmes that can view PNGs. I'v

  • Using song for text tone on ipad

    Can I set a song on my iPad as a text tone?

  • SDK Installation

    hello all i downloaded SDK, i need a step by step instalation procedure for it and how can i apply these services on my system. i am using callmanager v.4.1 and cisco unity connection version 1.1 your reply will be appreciated regards

  • Software Issues

    Hello there, I am not sure what is the contact email address for apple tv support!! I have an issue with mu itv ON UPDATING MY ITV GETS STUCK, BLACK SCREEN WITH APPLE LOGO AND MY ITUNES IS NOT RECOGNIZING THE DEVICE!! My itv is still under warrant bu