tt_QUARTILE function
tt_QUARTILE(values, q): quartile; q=1 Q1, q=2 median, q=3 Q3
Implementation
dynamic tt_QUARTILE(List<dynamic> values) {
final n = values.length;
if (n < 2) return 0.0;
final q = varToInt(values.last);
final data = values.sublist(0, n - 1).map(varToDouble).toList()..sort();
final pos = q * (data.length - 1) / 4.0;
final lo = pos.floor();
final hi = lo + 1;
if (hi >= data.length) return data.last;
return data[lo] + (pos - lo) * (data[hi] - data[lo]);
}