Forum Discussion

Patrick Naughton's avatar
Patrick Naughton
Brass Contributor
Sep 01, 2018

make-series does not allow variable reference for range

Take this example:

let T = datatable(x: int, group: string) [
23, "red",
44, "red",
55, "red",
66, "red",
11, "green",
43, "blue"
];
T | make-series avg(x) on x in range(0,100,20) by group

It works fine...

But if I want to use a variable to hold the range, it fails with syntax error...

let R = range(0,100,20);
let T = datatable(x: int, group: string) [
23, "red",
44, "red",
55, "red",
66, "red",
11, "green",
43, "blue"
];
T | make-series avg(x) on x in R by group

Is this expected behavior?

  • My understanding of the language that this is intentional. You cannot replace whole operators. You can this though:

     

    let firstNum = 0;
    let secondNum = 100;
    let thirdNum = 20;
    let T = datatable(x: int, group: string) [
     23, "red",
     44, "red",
     55, "red",
     66, "red",
     11, "green",
     43, "blue"
    ];
    T | make-series avg(x) on x in range(firstNum,secondNum,thirdNum)  by group

Resources