Meilleure façon de suivre la valeur initiale d'une tendance temporelleTout,
Besoin d'un conseil sur la meilleure façon d'organiser cela.
J'ai donc un tableau qui suit un paramètre pour quelques catégories au fil du temps. J'ai besoin d'une colonne indiquant le pourcentage de changement par rapport à une valeur initiale.
Disons que c'est un tracker de compétition de poids. Nous avons le poids initial et nous suivons le pourcentage de changement. Celui qui obtient plus de 15% en 30 jours gagne.
Pour suivre que j'ai créé une table comme celle-ci:
Dans ce tableau, j'ai mis les poids initiaux sous forme de variables de tableau et créé une colonne masquée qui affiche simplement le poids initial en fonction du nom:

Après cela, tout ce que j'ai à faire est de cliquer sur le script du tableau de bord et celui-ci affiche tous les graphiques.

Mon objectif est de le rendre aussi convivial que possible, de sorte que quasiment tout le monde puisse saisir les données sans trop réfléchir. J'ai donc quelques questions pour la communauté:
Maintenant, supposons qu'une nouvelle personne rejoigne le jeu et que nous devions entrer un nouveau nom.
- Pour ce faire, vous devez créer une nouvelle variable de table avec le nom approprié.
- Puis éditez la formule dans la colonne cachée "InitialWeight" pour ajouter ce nom
- Ajoutez ensuite ce nom comme option autorisée pour la colonne "Nom".
Tout cela n'est pas très convivial. Nous entrons essentiellement les mêmes données trois fois. Y a-t-il un moyen de le faire une seule fois? Disons que nous avons entré une nouvelle variable.
- Existe-t-il un moyen de dire dans la formule - "renvoyer la valeur de la variable portant le même nom que la valeur de la colonne" Nom ""?
- Y a-t-il un moyen de dire - "mes valeurs autorisées sont les noms de mes variables de table"?
Ou peut-être existe-t-il un autre moyen de définir un nouveau nom et un nouveau mode initial et d'extraire ces informations de manière organique? Tout ce à quoi je peux penser est d'écrire une application complète pour gérer cela, mais peut-être y a-t-il un moyen pratique de le faire en mode boîte?
Merci,
M.
Re: Meilleur moyen de suivre la valeur initiale d'une tendance temporelleJe suis d'accord, un script complet serait le meilleur. Cependant, cet excersize visait quelque chose que vous pouvez configurer en 10-15 minutes avec un minimum de fonctionnalités. Ou, en utilisant une fonctionnalité qui existe déjà.
Merci pour les suggestions! Je pense que c'est une manière plus élégante. Cependant, tout n'est pas immédiatement clair dans le code, il faudra donc rester assis dessus pendant un moment.
Merci encore!
Re: Meilleur moyen de suivre la valeur initiale d'une tendance temporelleMiguello,
Mon interprétation de ce que vous avez décrit est que vous disposez de ce tableau auquel une communauté d'utilisateurs peut accéder. Je ferais probablement quelque chose de différent, comme un complément. Mais en utilisant votre interface de table, je voudrais:
- Supprimer les variables de nom et supprimer la colonne masquée
- Ajoutez un script appelé New Member Registry, où l'utilisateur est invité à entrer un nom et un poids. Les informations sont utilisées pour mettre à jour un tableau associatif appelé registy = tableau associatif ({"Marvin", 280}, {"Smith", 205}, {"Jones", 201}, etc.); Une fois défini, le registre ["Marvin"] renvoie la valeur 250.
- Ajoutez un script appelé Initialiser ou Mettre à jour. Il s’agit du script qui exécute la définition du registre afin que les valeurs soient en mémoire.
- Modifiez la formule pour qu'elle soit t0 = registry << get value (: Name); (: Poids - t0) / t0) * 100
Le fichier joint est une maquette. Vous n'avez pas mentionné la version de JMP que vous utilisez? Cela fonctionne pour JMP14. Si vous possédez une version antérieure du registre JMP, vous devrez utiliser une fonction plutôt qu'un tableau associatif.
Je pense que l'utilisation d'un script de complément serait plus robuste que les scripts et les constantes incorporés dans un tableau que les utilisateurs peuvent modifier.
Re: Meilleur moyen de suivre la valeur initiale d'une tendance temporelle
Le seul problème est que pour pouvoir lire les variables mises à jour, vous devez accéder à l'écran de modification de la formule et au moins cliquer sur le bouton Appliquer. Tout moyen de contourner ça?
Je retire ça, ça met à jour la formule. Pas immédiatement, mais dès que vous appuyez sur Entrée et ajoutez une autre ligne.
Re: Meilleur moyen de suivre la valeur initiale d'une tendance temporelleOk, la première étape consisterait à remplacer l'expression Match () dans la formule de la colonne "InitialWeight" par le code suivant:
Names = Current Data Table() << Get Table Variable Names();
formula_pre = "Match( :Name";
formula = formula_pre;
formula_post = ")";
For( i = 1, i <= N Items( Names ), i++,
formula = formula || ", \!"" || Names[i] || "\!", :" || Names[i]
);
formula = formula || formula_post;
Eval( Parse( formula ) );
Cela prendra la liste de vos variables de table et construira et évaluera une formule Matach () basée sur la liste.
Le seul problème est que pour pouvoir lire les variables mises à jour, vous devez accéder à l'écran de modification de la formule et au moins cliquer sur le bouton Appliquer. Tout moyen de contourner ça?
Merci,
M.