Линейная регрессия в диаграммах таблиц
Линии тренда линейной регрессии можно отобразить в растровых диаграммах программы QlikView с помощью параметра Линии тренда на странице Выражения в диалоге Свойства диаграммы. Также можно отобразить уравнение регрессии.
Пример:
Для отображения данных регрессии, например в диаграмме таблицы, необходимо вычислить регрессию. Функции агрегирования LINEST_M и LINEST_B предоставят необходимые значения наклона и точки пересечения с осью Y линейной регрессии. Функции агрегирования LINEST_M и LINEST_B всегда соответствуют непрерывной оси x, поэтому необходимо выбрать этот параметр на вкладке Оси свойств диаграммы.
Для правильного вычисления этим функциям необходимо предоставить все агрегирование диаграммы (выражение с итерацией для измерения) в качестве ввода. Чтобы сделать это, можно определить функцию расширенного агрегирования, содержащую то же базовое выражение и измерения, что и в содержащейся диаграмме. Затем функция расширенного агрегирования используется как параметры для агрегирований LINEST. Полученное выражение может выглядеть следующим образом:
linest_M(total aggr(TransVal,TransID),TransID)*TransID + linest_b(total aggr(TransVal,TransID),TransID)
Функция Only применяется для всех вхождений TransVal и TransID. Агрегирования LINEST должны иметь классификатор TOTAL, в противном случае параметры регрессии будут вычислены для точек диаграмм, а не всего набора данных. Результат показан в комбинированной диаграмме ниже, в которой регрессия показана как регулярное линейное выражение.
Обратите внимание, что в данном случае линия тренда является не обычной линией тренда QlikView, а регулярным выражением, отображенным как линия. Можно заметить различие, что график выражения, в отличие от обычной линии тренда, не экстраполирован вне первой и последней точек диаграммы.
Эту диаграмму можно преобразовать в прямую таблицу:
Используются следующие выражения, приведенные в порядке отображения:
Round(Sum(TransVal),'0.1')
Round(LINEST_M(TransVal,TransID,TransID),'0,1')
Round(LINEST_B(TransVal,TransID,TransID),'0,1')