Je voudrais une fonction intégrée similaire à Col Moving Average () qui calcule un quantile mobile (roulant) d'une colonne. Vous pouvez l'appeler Col Moving Quantile () et / ou Col Moving Median ().
J'ai écrit une fonction utilisateur (jointe) qui fonctionne assez bien pour les petites tables, mais qui utilise une approche très inefficace. Je sais avec certitude qu'il existe des moyens beaucoup plus efficaces d'implémenter cette fonction qui n'impliquent pas de recalcul par force brute à chaque étape glissante. Ces approches dépassent ma capacité de codage.
</CODE></P><PRE><CODE class=" language-jsl">Add Custom Functions(
New Custom Function(
"x",
"Col Moving Quantile",
Function( {col, p, before, after, dt = Current Data Table()},
{coldata = Column( dt, col ) << Get As Matrix, from = Max( Row() - before, 1 ), to, to = Min( Row() + after, N Rows( dt ) )},
Quantile( p, coldata[Index( from, to )] )
)
)
// === Documentation ===
<<FORMULA category=""> )" ) //
<<PARAMETER></PARAMETER></FORMULA>