Partager via


series_fill_linear()

S’applique à : ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Interpole de façon linéaire les valeurs manquantes dans une série.

Prend une expression contenant un tableau numérique dynamique comme entrée, effectue une interpolation linéaire pour toutes les instances de missing_value_placeholder et retourne le tableau résultant. Si le début et la fin du tableau contiennent missing_value_placeholder, il est remplacé par la valeur la plus proche autre que missing_value_placeholder. Cette fonctionnalité peut être désactivée. Si l’ensemble du tableau se compose de la missing_value_placeholder, le tableau est rempli de constant_value, ou 0 s’il n’est pas spécifié.

Syntaxe

series_fill_linear(série, [ missing_value_placeholder [,fill_edges [, constant_value ]])

En savoir plus sur les conventions de syntaxe.

Paramètres

Nom Type Requise Description
série dynamic ✔️ Tableau de valeurs numériques.
missing_value_placeholder scalaire Spécifie un espace réservé pour les valeurs manquantes. La valeur par défaut est double(null). La valeur peut être de n’importe quel type qui sera converti en types d’éléments réels. double(null), long(null) et int(null) ont la même signification.
fill_edges bool Indique si missing_value_placeholder au début et à la fin du tableau doit être remplacé par une valeur la plus proche. true par défaut. Si la valeur est définie false, missing_value_placeholder au début et à la fin du tableau est conservée.
constant_value scalaire Pertinent uniquement pour les tableaux qui se composent entièrement de valeurs Null . Ce paramètre spécifie une valeur constante avec laquelle remplir la série. Valeur par défaut est 0. La définition de ce paramètre sur double(Null) conserve les valeurs Null .

Retours

Interpolation linéaire de série à l’aide des paramètres spécifiés. Si la série contient uniquement int ou long des éléments, l’interpolation linéaire retourne des valeurs interpolées arrondies plutôt que des valeurs exactes.

Remarque

  • Si vous créez une série à l’aide de l’opérateur make-series , spécifiez null comme valeur par défaut pour utiliser des fonctions d’interpolation comme series_fill_linear() par la suite. Consultez l’explication.
  • Si missing_value_placeholder est double(null) ou omis, un résultat peut contenir des valeurs Null . Pour remplir ces valeurs null , utilisez d’autres fonctions d’interpolation. Seule series_outliers() prend en charge les valeurs Null dans les tableaux d’entrée.
  • series_fill_linear() conserve le type d’origine des éléments de tableau.

Exemple

let data = datatable(arr: dynamic)
    [
    dynamic([null, 111.0, null, 36.0, 41.0, null, null, 16.0, 61.0, 33.0, null, null]), // Array of double    
    dynamic([null, 111, null, 36, 41, null, null, 16, 61, 33, null, null]), // Similar array of int
    dynamic([null, null, null, null])                                                   // Array with missing values only
];
data
| project
    arr, 
    without_args = series_fill_linear(arr),
    with_edges = series_fill_linear(arr, double(null), true),
    wo_edges = series_fill_linear(arr, double(null), false),
    with_const = series_fill_linear(arr, double(null), true, 3.14159)  

Sortie

arr without_args with_edges wo_edges with_const
[null,111.0,null,36.0,41.0,null,null,16.0,61.0,33.0,null,null] [111.0,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,33.0,33.0] [111.0,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,33.0,33.0] [null,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,null,null] [111.0,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,33.0,33.0]
[null,111,null,36,41,null,null,16,61,33,null,null] [111,111,73,36,41,32,24,16,61,33,33,33] [111,111,73,36,41,32,24,16,61,33,33,33] [null,111,73,36,41,32,24,16,61,33,null,null] [111,111,74,38, 41,32,24,16,61,33,33,33]
[null,null,null,null,null] [0.0,0.0,0.0,0.0] [0.0,0.0,0.0,0.0] [0.0,0.0,0.0,0.0] [3.14159,3.14159,3.14159,3.14159]