J'ai des données expérimentales qui prennent une mesure toutes les minutes pendant 10 minutes.
Je veux ensuite prendre une moyenne pour un sous-ensemble de points de données au milieu de l'ensemble.
Ma solution est d'avoir une colonne cachée (:Range) avec une formule qui contient les critères (entrée via une fenêtre modale) et définit chaque ligne comme 1 ou 0 si elle doit être incluse dans le calcul.
Ma colonne de sortie utilise ensuite la fonction Col Mean pour prendre la moyenne des points d'intérêt.
Cette partie fonctionne très bien, mais je souhaite également que la première ligne vide (non incluse dans le calcul) prenne la valeur de la ligne suivante, ce qui facilitera la manipulation ultérieure des données. J'ai ajouté la fonction Lag comme ci-dessous.
If( :Range == 1,
Col Mean( :Measurement, :ID, :Range ),
Lag( :Measurement, -1 )
)
Le problème est que lorsque je l'exécute en tant que script, la fonction Lag ne fonctionne pas. Si j'entre manuellement la formule ci-dessus, cela fonctionne bien, mais le script ci-dessous ne remplit que les lignes où : Range == 1, malgré le fait que je puisse voir que la formule est correctement appliquée à la colonne.
New Column( "Mean Measurement", Formula(
If( :Range == 1,
Col Mean( :Measurement, :ID, :Range ),
Lag( :Measurement, -1 ))))
Y a-t-il une raison à cela et un moyen de forcer la colonne à réévaluer la formule pour qu'elle s'exécute correctement ?