comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnesj'ai un tableau avec plus de 500 lignes et plus de 100 colonnes. Rempli avec des valeurs numériques (dates). Je dois trouver la valeur maximale et minimale le long de chaque ligne pour la date la plus ancienne et la plus récente. je suppose que le script serait similaire à « Maximum (colonne1........colonne100) » pour chaque ligne. Mais je ne sais pas comment scripter les plages de colonnes le long de chaque ligne.
Modélisation statistique avancéeAutomatisation et scriptsMélange et nettoyage des donnéesPersonnalisation de masseRe : Comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnesCette formule pourrait-elle
If( Row() == 1,
nc = N Cols( Current Data Table() )
);
Mean( As Column( nc - 4 ), As Column( nc - 3 ),
As Column( nc - 2 ), As Column( nc - 1 ) );
être quelque chose dans la direction que vous recherchez
Re : Comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnesconsidérant que chaque colonne contient des valeurs de chaque jour ; et je dois prendre la moyenne des données des 4 derniers jours (moyenne de 4 colonnes) et la mettre dans une nouvelle colonne. comment créer une formule pour cette nouvelle colonne ? où les références à l'intérieur de la formule changeront chaque jour ?Re : Comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnesSi vous souhaitez utiliser uniquement le 10ème jusqu'à la fin du tableau de données, vous pouvez modifier les éléments de la liste utilisée pour la spécification de la colonne.Voici une modification de la formule que j'ai soumise précédemment
If( Row() == 1,
theList = Current Data Table() << get column names( );
remove from( theList, 1, 9 );
);
Max( theLIst );
La documentation sur la modification de liste peut être trouvée dans le Guide de script.
Re : Comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnesVoici une façon. Utilisez « Aide > Index des scripts » et le « Guide de scripts JSL » pour comprendre ce qui n'est pas clair.
NamesDefaultToHere(1);
// Make some data
nr = 100;
nc = 50;
dt = AsTable(J(nr, nc, RandomNormal(0, 1)));
dt << setName("Some Random Continuous Columns");
// Define a contiguous range of columns to consider
startColNum = RandomInteger(1, Floor(nc/2));
endColNum = RandomInteger(Ceiling(nc/2), nc);
// Get the list of columns to include in the formulas
allCols = dt << getColumnNames;
myCols = allCols[startColNum::endColNum];
// Add the required formulas
CMD = Expr(dt << NewColumn("Row Maximum from Cols "||Char(startColNum)||" to "||Char(endColNum), Numeric, Continuous, Formula(Max(colsTBD))));
SubstituteInto(CMD, Expr(colsTBD), myCols);
CMD;
CMD = Expr(dt << NewColumn("Row Minimum from Cols "||Char(startColNum)||" to "||Char(endColNum), Numeric, Continuous, Formula(Min(colsTBD))));
SubstituteInto(CMD, Expr(colsTBD), myCols);
CMD;
Re : Comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnescomment spécifier la plage dans le script, quels symboles/caractères exacts utiliser dans le script ? c'est ce qui m'intéresseRe : Comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnesJe pense que ce serait simple. Créez simplement une nouvelle colonne avec la formule Min(:Col1, :Col2,....,:Coln)
Vous pouvez glisser et déposer toutes les colonnes dans l'éditeur de formule.Re : Comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnessi je veux utiliser uniquement une plage de colonnes, PAS toutes les colonnes, comment puis-je écrire cela ? Disons que je veux utiliser uniquement la 10e à la 100e colonne pour toutes les lignes ; comment puis-je écrire cela?Re : Comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnesVoici une formule simple qui trouvera toutes les colonnes continues de votre tableau de données, puis calculera la valeur maximale de ces colonnes.Utilisez-le simplement comme formule pour une nouvelle colonne
If( Row() == 1,
theList = Current Data Table() << get column names( continuous )
);
Max( theLIst );
Re : Comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnesSalut @tonkatsu2020 ,
Vous voudrez peut-être vous demander si votre tableau de données est « orienté » ou organisé de la bonne manière. Normalement, vous voudriez avoir une seule colonne avec des données, puis les lignes seraient chaque nouvelle instance de ce que vous regardez.
Vous pourriez envisager de transposer vos données. Ensuite, il est tout simplement facile de trouver le Col Maximum() et le Col Minimum(). Cependant, ce n’est peut-être pas ce que vous recherchez. Pouvez-vous partager une version anonymisée de votre tableau ? Cela peut vous aider à comprendre comment vos données sont structurées et ce que vous voulez en faire.
DS
Re : Comment créer un script pour trouver la valeur de date maximale et minimale dans une ligne pour plus de 100 colonnesSalut,
Avez-vous pensé à transposer vos données (les lignes deviennent des colonnes et réciproquement) ? Vous pourrez alors utiliser les formules Col Minimum et Col Maximum.
Meilleur,
TS