Discover this year's submissions to the Dataiku Frontrunner Awards and give kudos to your favorite use cases and success stories!READ MORE

Construire une formule qui récupérer une valeur d'une cellule antérieure

KikiClem
Level 1
Level 1
Construire une formule qui récupérer une valeur d'une cellule antérieure

Bonjour, 

Dans un recette "Prépare", je recherche à construire une nouvelle colonne avec une formule. 

Cependant je n'ai pas trouver comment faire pour rajouter dans ma formule, l'expression qui récupére la valeur de la cellule antérieure.

Objectifs : faire  ("colonne X" / 60) + "résultat de la cellule d'avant ou antérieure sur la colonne"

 

En vous remerciant par avance, 

0 Kudos
5 Replies
Manuel
Dataiker
Dataiker

Hi 

The prepare recipe works row-by-row and, when processing a row, it has no visibility to the previous or subsequent rows in the dataset. The concept of an ordered dataset is also not valid for most dataset types.

I recommend that you have a look at the Windows recipe, which allows you to indicate a sort column and retrieve values from previous or subsequent rows. Then you apply your formula in a following prepare recipe.

Have a look at this video as an overview of the Windows recipe: https://www.youtube.com/watch?v=mL4OxXK8-NY.

I hope this helps.

Best regards,

Manuel

 

 

 

0 Kudos
KikiClem
Level 1
Level 1
Author

Bonjour, 

Au final, la recette Windows ne permet pas d'ouvrir le droit de regard sur les lignes précédentes et surtout de reprendre l'index ou la valeur de la cellule "a1" pour calculer "a2" avec ("a1" + 10) par exemple. Cela  revient à faire une formule excel 

Il faut peut être passer par une recette python mais je ne vois pas comment le coder ....

Cordialement 

0 Kudos
Manuel
Dataiker
Dataiker

Hi,

I understand your problem better now. The calculation depends on the value of the same column of the previous row.

Two questions:

  • What is the value of the column for the first row? (In excel you typically have a different value);
  • If the calculation is as simple as a2=(a1+10), isn't it enough to know the order n of the row and then do a calculation like n*10?

In this latter scenario, the windows recipe is still useful, as it allows you to rank all rows and then you can have a prepare recipe to calculate the new column as n*10.

I hope this helps.

0 Kudos
KikiClem
Level 1
Level 1
Author

Bonjour, 

 

Tout à fait c'est la valeur précédente de la même colonne. 

  • La valeur de la première ligne de la colonne sera de 0. 
  • Le calcul sera plus compliqué car la valeur a2 sera une valeur calculée également et il y aura des condition à rajouter tel que si b2 & c2 sont différents de 0 alors a2=b2 sinon a2 = a1 + b2

La recette Windows ne me permet pas de faire des calculs si complexe avec un recette perpare aprés 

 

Cordialement 

0 Kudos
Manuel
Dataiker
Dataiker

Hi,

Yes, you are right, since your formula is complicated, I think the only solution is to use Python, processing the rows in order and calculating the new column.

Best regards

 

 

 

 

0 Kudos