Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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

Printemps des cartes 2024

#1 Thu 06 May 2021 17:10

Celo
Participant occasionnel
Date d'inscription: 20 Jun 2019
Messages: 12

Maximum et minimum d'un attribut commun

Bonjour,

Je suppose que cela doit être quelque chose de facile mais je n'y arrive pas...

Je possède un tableau excel structuré comme ci dessous :

ID | COLONNE 2 | COLONNE 3
1     0                 30
1     25               60
2     0                  80

Je souhaiterai faire un script FME me permettant d'avoir comme résultat la valeur minimum pour "COLONNE2" et le maximum pour "COLONNE 3" tout cela pour chaque ID notamment quand j'ai deux ID identiques. Je vous mets ci dessous un exemple du résultat que je souhaite.

ID | COLONNE 2 | COLONNE 3
1     0                 60
2     0                  80


Je vous remercie pour votre aide

Hors ligne

 

#2 Thu 06 May 2021 21:42

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 380

Re: Maximum et minimum d'un attribut commun

Bonjour,

Le transformer qui vous aidera est StatisticsCalculator.
En regroupant par ID et en calculant min et max pour les autres champs COLONNE 2 et COLONNE 3.
Puis en conservant uniquement les valeurs min de COL2 et max de COL3.

Voir workspace joint.


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#3 Thu 06 May 2021 21:48

SRapenne
Participant occasionnel
Date d'inscription: 2 Feb 2020
Messages: 28

Re: Maximum et minimum d'un attribut commun

Bonjour,

Une solution possible utilisant 1 statisticsCalculator et 2 ExpressionsEvaluator.
Dans un 1er temps tu calcules les statistiques pour chaque ID et chaque colonnes avec un StatisticsCalculator puis tu cherches les min des 2 colonnes avec une fonction du style @min(@Value(col1.min),@Value(col2.min)) dans un  ExpressionsEvaluator puis les max de la même manière, tu finis en nettoyant la sortie avec un AttributesKeeper

Serge
Edit; effectivement j'avais mal lu le pb, un StatisticCalculator suffit (j'avais compris que tu cherchais à calculer les min et max des 2 colonnes pour chaque ID)

Dernière modification par SRapenne (Fri 07 May 2021 21:42)

Hors ligne

 

#4 Fri 07 May 2021 16:27

Sylvain M.
Participant assidu
Lieu: Saint-Pierre-des-Nids (53)
Date d'inscription: 8 Sep 2005
Messages: 981

Re: Maximum et minimum d'un attribut commun

Désolé si c'est hors sujet (je n'utilise pas FME), mais au cas où FME puisse exécuter du code SQL, ce besoin correspond à cette simple requête :

Code:

SELECT    ID, min("COLONNE 2"), max("COLONNE 3")
FROM    TABLEAU
GROUP BY    ID

Je serais surpris qu'il ne soit pas possible de faire du SQL avec FME. Si ?


Sylvain M.

Hors ligne

 

#5 Sat 08 May 2021 09:07

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 380

Re: Maximum et minimum d'un attribut commun

Oui Sylvain c'est possible, avec le transformer SQLExecutor.
J'avais pensé à le proposer mais je ne l'ai pas fait. Donc merci pour le code, qu'il faudra adapté un peu dans les paramètres du transformer.

Hors ligne

 

Pied de page des forums

Powered by FluxBB