banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Fri 10 July 2015 10:27

benoit111
Participant actif
Date d'inscription: 20 Jan 2008
Messages: 102

regrouper des colonnes d'une table excel

bonjour,

j'ai un fichier excel de données dans lequel j'aimerais regrouper 3 colonnes(faire un select distinct) qui correspondent à des valeurs x,y,z pour ensuite créer un shape avec vertexcreator... les transformateur utilisant les requêtes sql ne fonctionnent pas sur du excel..

Y at il un transformeurs qui pourrait me donner ce résultat?

merci d'avance

Hors ligne

 

#2 Fri 10 July 2015 12:10

benoit111
Participant actif
Date d'inscription: 20 Jan 2008
Messages: 102

Re: regrouper des colonnes d'une table excel

ok, j'ai utilisé le transformer "aggregator".

Par contre lorsque l'on a des coordonnées en wgs84 j'ai essayé d'utiliser reprojector mais cette méthode ne fonctionne pas et FME laisse le shape créée en wgs84??

Dernière modification par benoit111 (Fri 10 July 2015 12:37)

Hors ligne

 

#3 Fri 10 July 2015 14:44

lefred
Participant occasionnel
Lieu: Sophia Antipolis
Date d'inscription: 3 Jul 2008
Messages: 42

Re: regrouper des colonnes d'une table excel

Bonjour,

J'ai du mal à comprendre votre problématique. En tout cas, Aggregator ne me semble pas adapté.
Si les colonnes sont nommées dans la feuille excel que votre traitement lit, il suffit d'un VertexCreator où vous indiquez les noms d'attributs des colonnes X,Y,Z.
Si les colonnes ne sont pas nommées explicitement, AttributeRenamer devrait permettre de les nommer de façon compréhensible.
Dans le Reprojector, ne pas laisser l'option par défaut "read from feature" mais indiquer "EPSG:4326" ou équivalent.

Pour info, certains distributeurs ou prestataires dispensent d'excellentes formations FME :-)
Le coût de la formation est largement compensé par le temps gagné par la suite.

Cordialement.
Frédéric


--
Frédéric Eichelbrenner
Ellipso Facto - Sophia Antipolis

Hors ligne

 

#4 Wed 15 July 2015 10:43

benoit111
Participant actif
Date d'inscription: 20 Jan 2008
Messages: 102

Re: regrouper des colonnes d'une table excel

bonjour,

j'avais besoin d'Aggregator car les paires XY de ma table sont en doublons voire plus (je pensais que le (select distinct.... dans mon commentaire était clair) :-(
Pour le changement de projection

Dans le Reprojector, ne pas laisser l'option par défaut "read from feature" mais indiquer "EPSG:4326" ou équivalent.


c'est bien la manip que j'ai réalisé mais sans succès.....

Pour la formation je sais que cela me serait utile mais c'est pas moi qui décide:-)

Dernière modification par benoit111 (Wed 15 July 2015 12:47)

Hors ligne

 

#5 Wed 15 July 2015 16:23

klrblz
Participant occasionnel
Date d'inscription: 8 Feb 2011
Messages: 41

Re: regrouper des colonnes d'une table excel

Bonjour,

Afin de récupérer votre liste de valeurs X,Y,Z, essayez d'utiliser un matcher. Indiquez vos champs X,Y,Z dans "selected attributes".
En sortie vous récupérerez les valeurs uniques par le port NotMatched et une seule occurence des valeurs multiples (doublons) par le port SingleMatched.



Claire

Hors ligne

 

#6 Thu 16 July 2015 14:25

benoit111
Participant actif
Date d'inscription: 20 Jan 2008
Messages: 102

Re: regrouper des colonnes d'une table excel

bonjour,

merci claire ,je ne connaissais pas ce transfomer:-) l'aggregator a bien fonctionné pour mon projet, le matcher va me permettre d' accomplir une demande différente
merci

Dernière modification par benoit111 (Thu 16 July 2015 14:25)

Hors ligne

 

#7 Thu 16 July 2015 14:47

lefred
Participant occasionnel
Lieu: Sophia Antipolis
Date d'inscription: 3 Jul 2008
Messages: 42

Re: regrouper des colonnes d'une table excel

Bonjour,

Matcher a la capacité de tester à la fois les attributs et la géométrie, ce qui nécessite un temps de traitement assez élevé dans le cas de données volumineuses.
DuplicateRemover permet de ne tester que les attributs, ce qui le rend beaucoup plus rapide.

Cordialement,
Frédéric


--
Frédéric Eichelbrenner
Ellipso Facto - Sophia Antipolis

Hors ligne

 

#8 Thu 16 July 2015 15:40

benoit111
Participant actif
Date d'inscription: 20 Jan 2008
Messages: 102

Re: regrouper des colonnes d'une table excel

encore mieux.. merci frederic

Hors ligne

 

#9 Thu 16 July 2015 18:16

klrblz
Participant occasionnel
Date d'inscription: 8 Feb 2011
Messages: 41

Re: regrouper des colonnes d'une table excel

Le matcher permet de tester uniquement les attributs, uniquement la géométrie ou les deux. Mais DuplicateRemover c'est bien aussi wink

Hors ligne

 

#10 Fri 24 July 2015 14:27

benoit111
Participant actif
Date d'inscription: 20 Jan 2008
Messages: 102

Re: regrouper des colonnes d'une table excel

bonjour,

je me permet de reprendre ce fil de discussion car selon moi cela rentre dans la même problématique..

donc j'ai bien réussit à séparer mes deux destination dans le même processus:
  reprendre la source d'un excel et mapper des attributs pour créer une table oracle
puis utilisez deux champs de coordonnées, les regroupé pour ne pas avoir de doublon, créée une clé primaire puis un shape...
sur ces deux destination, j'ai un champ de liaison qui résulte de la concaténation des champs x et y.

mon soucis maintenant c que j'aimerais mettre à jour (cela dans le même processus) un champ de la table oracle avec les informations de la cle primaire du shape..? afin d'éviter d'utiliser un champ de liaison par concaténation ( pas très propre surtout avec des coordonnée plus ou moins longue).. je ne connais pas encore bien FME pour savoir si c'est possible ou si je vais devoir utiliser un workspacerunner pour séparer les projets et les lancer l'un après l'autre??

merci d'avance pour vos infos

Hors ligne

 

#11 Fri 24 July 2015 14:33

Cherubin
Participant assidu
Lieu: NGC 1300
Date d'inscription: 10 Jun 2008
Messages: 273

Re: regrouper des colonnes d'une table excel

Si j'ai bien compris, peut-être un Joiner ou un FeatureReader?

Hors ligne

 

#12 Fri 24 July 2015 15:45

benoit111
Participant actif
Date d'inscription: 20 Jan 2008
Messages: 102

Re: regrouper des colonnes d'une table excel

ok, c'est ce que je pensais au départ mais sans succès. et du coup j'ai plutôt penser créer le champ identifiant avant d'utiliser le DuplicateRemover

du coup je l'ai fait avec pythoncaller, j'ai d'abord concaténer les champs X et Y puis fait un tri sur cette concaténation puis le script

Code:

import fmeobjects


table=FME_MacroValues['SourceDataset_CSV']
code=None

def processFeature (table):
    global code
    global rank
    if code!=table.getAttribute("CONCATENATION"):
        rank+=1
        code=table.getAttribute("CONCATENATION")
    else:
        rank==rank
        code=table.getAttribute("CONCATENATION")
    table.setAttribute("CHAMPSCLE", rank)

ensuite j'ai utilisé ce champ et le X ,Y avec le DuplicateRemover pour créée le shape et j'obtient bien mon champ de liaison propre sur les deux sortie:-)

Dernière modification par benoit111 (Sun 26 July 2015 09:52)

Hors ligne

 

Pied de page des forums

Powered by FluxBB