Что такое агрегирование данных. Агрегирование данных. Использование ROLLUP для вычисления частичных сумм

Агрегирование данных состоит в формировании промежуточных итогов , а также создании сводных и консолидированных таблиц .)

Агрегирование данных выполняется в тех таблицах, в которых имеются поля с повторяющимися по смыслу значениями. Наиболее типичными задачами подобного типа являются задачи получения различного вида статистических итогов. Поясним подробнее назначение каждой из отмеченных процедур.

· Промежуточные итоги . Эта опция позволят сформировать промежуточные итоговые результаты определенного вида (сумма, среднее значение, максимум, минимум, количество значащих записей и т.д.) для выделенного ряда данных (группы записей). При формировании промежуточных итогов требуется предварительно произвести сортировку таблицы по полям группировки записей. К полученным промежуточным итогам можно также добавить новые итоги с сохранением предыдущих итогов.

· Сводные таблицы. Этот инструмент табличного процессора обеспечивает формирование сводной (агрегированной) информации и представление табличных данных в структурированном виде (в определенной внешней форме с упорядочением местоположения фрагментов), а также построение связанной со сводной таблицей сводной диаграммы. Распределение информации в сводной таблице можно задать, указывая какие поля и элементы должны в ней содержаться. Поле - это некоторая общая категория (поименованный столбец), а элемент - это отдельное значение, содержащееся внутри некоторой категории значений. Источником данных для сводной таблицы может быть электронная таблица, данные из внешних баз и т.д. Помимо «базовых» полей из источников данных, сводная таблица допускает формирование вычисляемых полей в области данных, а также вычисляемых элементов для полей группировки. Элементы полей группирования далее могут объединяться в группы, для которых можно указать тип итоговой функции.

Примечание.

Сводная таблица - это средство только для отображения информации и данные, расположенные в теле сводной таблицы, нельзя изменить. Чтобы малейшие изменения данных в источниках информации оперативно отражались в сводной таблице как в ее ячейках, напрямую связанных с источниками данных, так и ячейках, отображающих итоговые расчеты, необходимо установить автоматический режим обновления сводной таблицы.

· Консолидация данных . Это особый способ вычисления итогов для диапазона ячеек. Консолидируемые данные могут находится на одном и том же или нескольких листах рабочей книги, а также на листах нескольких разных рабочих книг. При консолидации доступны все типичные функции статистических итогов (сумма, среднее значение, максимум, минимум и т.п.). Результат консолидации записывается на лист рабочей книги, причем на одном и том же листе могут быть записаны несколько результатов консолидации с одними и теми же исходными диапазонами ячеек с данными, но с разными итоговыми функциями. Однако, если исходные диапазоны ячеек отличаются, результаты консолидации должны располагаться на разных листах. Различают следующие виды консолидации:

· Консолидация по расположению ячеек - состав и порядок следования консолидируемых данных во всех диапазонах постоянный, т.е. данных исходных областей находятся в одном и том же месте и размещены в одном и том же порядке. Этот способ используется для консолидации данных нескольких рабочих листов, созданных на основе одного шаблона.

· Консолидация по категориям - когда данные исходных областей не упорядочены, но имеют одни и те же заголовки столбцов и строк. Этот способ применяется при консолидации данных рабочих листов, имеющих разную структуру, но одинаковые заголовки.

· Консолидация с помощью трехмерных ссылок - исходные области располагаются на любом листе, в любой книге, на других открытых листах или книгах, а также зачастую на листах других табличных процессоров. Этот способ является наиболее предпочтительным, т.к. он снимает ограничения на расположение данных в исходных областях.

Примечание.

После создания консолидированной итоговой таблицы можно добавлять, удалять или изменять исходные области данных . Кроме этого, можно создать связи итоговой таблицы с исходными данными, с тем, чтобы данные области назначения итоговой таблицы автоматически обновлялись при изменении данных в исходных областях.

Агрегирование данных состоит в формировании промежуточных итогов , а также создании сводных и консолидированных таблиц .)

Агрегирование данных выполняется в тех таблицах, в которых имеются поля с повторяющимися по смыслу значениями. Наиболее типичными задачами подобного типа являются задачи получения различного вида статистических итогов. Поясним подробнее назначение каждой из отмеченных процедур.

· Промежуточные итоги . Эта опция позволят сформировать промежуточные итоговые результаты определенного вида (сумма, среднее значение, максимум, минимум, количество значащих записей и т.д.) для выделенного ряда данных (группы записей). При формировании промежуточных итогов требуется предварительно произвести сортировку таблицы по полям группировки записей. К полученным промежуточным итогам можно также добавить новые итоги с сохранением предыдущих итогов.

· Сводные таблицы. Этот инструмент табличного процессора обеспечивает формирование сводной (агрегированной) информации и представление табличных данных в структурированном виде (в определенной внешней форме с упорядочением местоположения фрагментов), а также построение связанной со сводной таблицей сводной диаграммы. Распределение информации в сводной таблице можно задать, указывая какие поля и элементы должны в ней содержаться. Поле - это некоторая общая категория (поименованный столбец), а элемент - это отдельное значение, содержащееся внутри некоторой категории значений. Источником данных для сводной таблицы может быть электронная таблица, данные из внешних баз и т.д. Помимо «базовых» полей из источников данных, сводная таблица допускает формирование вычисляемых полей в области данных, а также вычисляемых элементов для полей группировки. Элементы полей группирования далее могут объединяться в группы, для которых можно указать тип итоговой функции.

Примечание.

Сводная таблица - это средство только для отображения информации и данные, расположенные в теле сводной таблицы, нельзя изменить. Чтобы малейшие изменения данных в источниках информации оперативно отражались в сводной таблице как в ее ячейках, напрямую связанных с источниками данных, так и ячейках, отображающих итоговые расчеты, необходимо установить автоматический режим обновления сводной таблицы.

· Консолидация данных . Это особый способ вычисления итогов для диапазона ячеек. Консолидируемые данные могут находится на одном и том же или нескольких листах рабочей книги, а также на листах нескольких разных рабочих книг. При консолидации доступны все типичные функции статистических итогов (сумма, среднее значение, максимум, минимум и т.п.). Результат консолидации записывается на лист рабочей книги, причем на одном и том же листе могут быть записаны несколько результатов консолидации с одними и теми же исходными диапазонами ячеек с данными, но с разными итоговыми функциями. Однако, если исходные диапазоны ячеек отличаются, результаты консолидации должны располагаться на разных листах. Различают следующие виды консолидации:


· Консолидация по расположению ячеек - состав и порядок следования консолидируемых данных во всех диапазонах постоянный, т.е. данных исходных областей находятся в одном и том же месте и размещены в одном и том же порядке. Этот способ используется для консолидации данных нескольких рабочих листов, созданных на основе одного шаблона.

· Консолидация по категориям - когда данные исходных областей не упорядочены, но имеют одни и те же заголовки столбцов и строк. Этот способ применяется при консолидации данных рабочих листов, имеющих разную структуру, но одинаковые заголовки.

· Консолидация с помощью трехмерных ссылок - исходные области располагаются на любом листе, в любой книге, на других открытых листах или книгах, а также зачастую на листах других табличных процессоров. Этот способ является наиболее предпочтительным, т.к. он снимает ограничения на расположение данных в исходных областях.

Примечание.

После создания консолидированной итоговой таблицы можно добавлять, удалять или изменять исходные области данных . Кроме этого, можно создать связи итоговой таблицы с исходными данными, с тем, чтобы данные области назначения итоговой таблицы автоматически обновлялись при изменении данных в исходных областях.

Aggregate Data aggregates groups of cases in the active dataset into single cases and creates a new, aggregated file or creates new variables in the active dataset that contain aggregated data. Cases are aggregated based on the value of zero or more break (grouping) variables. If no break variables are specified, then the entire dataset is a single break group.

  • If you create a new, aggregated data file, the new data file contains one case for each group defined by the break variables. For example, if there is one break variable with two values, the new data file will contain only two cases. If no break variable is specified, the new data file will contain one case.
  • If you add aggregate variables to the active dataset, the data file itself is not aggregated. Each case with the same value(s) of the break variable(s) receives the same values for the new aggregate variables. For example, if gender is the only break variable, all males would receive the same value for a new aggregate variable that represents average age. If no break variable is specified, all cases would receive the same value for a new aggregate variable that represents average age.

Break Variable(s). Cases are grouped together based on the values of the break variables. Each unique combination of break variable values defines a group. When creating a new, aggregated data file, all break variables are saved in the new file with their existing names and dictionary information. The break variable, if specified, can be either numeric or string.

Aggregated Variables. Source variables are used with aggregate functions to create new aggregate variables. The aggregate variable name is followed by an optional variable label, the name of the aggregate function, and the source variable name in parentheses.

You can override the default aggregate variable names with new variable names, provide descriptive variable labels, and change the functions used to compute the aggregated data values. You can also create a variable that contains the number of cases in each break group.

To Aggregate a Data File

  1. From the menus choose:

    Data > Aggregate...

  2. Optionally select break variables that define how cases are grouped to create aggregated data. If no break variables are specified, then the entire dataset is a single break group.
  3. Select one or more aggregate variables.
  4. Select an aggregate function for each aggregate variable.

Optionally, you can override the default aggregate variable names with new variable names, provide descriptive variable labels, and create a variable that contains the number of cases in each break group.

Saving Aggregated Results

You can add aggregate variables to the active dataset or create a new, aggregated data file.

  • Add aggregated variables to active dataset . New variables based on aggregate functions are added to the active dataset. The data file itself is not aggregated. Each case with the same value(s) of the break variable(s) receives the same values for the new aggregate variables.
  • Create a new dataset containing only the aggregated variables . Saves aggregated data to a new dataset in the current session. The dataset includes the break variables that define the aggregated cases and all aggregate variables defined by aggregate functions. The active dataset is unaffected.
  • Write a new data file containing only the aggregated variables . Saves aggregated data to an external data file. The file includes the break variables that define the aggregated cases and all aggregate variables defined by aggregate functions. The active dataset is unaffected.

Sorting Options for Large Data Files

For very large data files, it may be more efficient to aggregate presorted data.

File is already sorted on break variable(s) . If the data have already been sorted by values of the break variables, this option enables the procedure to run more quickly and use less memory. Use this option with caution.

  • Data must by sorted by values of the break variables in the same order as the break variables specified for the Aggregate Data procedure.
  • If you are adding variables to the active dataset, select this option only if the data are sorted by ascending values of the break variables.

Sort file before aggregating . In very rare instances with large data files, you may find it necessary to sort the data file by values of the break variables prior to aggregating. This option is not recommended unless you encounter memory or performance problems.

В данном разделе рассматривается применение в запросе агрегирующих функций- функций вычисляющих результат по набору значений группы, либо всех записей БД. Например, функция sum возвращает сумму значений заданного поля, а функция count - общее число записей.

Агрегирующая функция может применяться ко всем записям БД слоя, к выборке по заданным условиям и, кроме того, возможно группирование записей слоя в несколько групп, и применение агрегирующей функции к каждой группе («Группировка записей»).

Применяемые агрегирующие функции записываются после ключевого слова SELECT . Также допускается использовать агрегирующие функции в составе выражений, включающих функции, арифметические и побитовые операции. В одном запросе может перечисляться несколько выражений с агрегирующими функциями. Не допускается в запросе одновременно с агрегирующими функциями запрашивать значения полей записей БД, либо использовать в аргументах неагрегирующих функций обращения к полям записей БД. Например, запрос вида SELECT SQRT(Area), SUM(Perimeter) FROM Здания не допускается, поскольку аргументом функции SQRT является название поля данных.

Общая запись агрегирующих функций:

<Функция> ([DISTINCT ] <выражение> )

В качестве аргумента агрегирующей функции обычно используется название поля, над значениями которого проводятся вычисления. Также допускается в качестве аргумента использовать выражения, включающие в себя произвольную комбинацию названий полей, констант, функций и подзапросов, объединенных арифметическими и побитовыми операциями.

Остальная часть запроса задается стандартным образом.

Перед аргументом функции (кроме функций MAX и MIN )может указываться ключевое слово DISTINCT . В этом случае итоговое значение вычисляется только для различающихся значений аргумента. При использовании ключевого слова DISTINCT в качестве аргумента агрегирующей функции нельзя использовать арифметические выражения, - только названия полей.

В языке SQL используются следующие агрегирующие функции:

SUM ([DISTINCT ] <выражение>)

Выводит в итоговой таблице сумму значений для выражения по полям выборки. Выражение должно возвращать числовое значение.

AVG ([DISTINCT ] <выражение>)

Среднее значение для выражения. Выражение должно возвращать числовое значение.

COUNT ([DISTINCT ] <выражение> |*)

Подсчитывает число записей, в который выражение не имеет значение Null (поля имеют значение Null , когда никакое значение для них не задано). Выражение может возвращать произвольное значение.

При используемом формате функции COUNT (*) возвращает общее количество записей в БД слоя.

MAX (<выражение>)

Возвращает максимальное значение выражения для выборки.

MIN ( <выражение> )

Возвращает минимальное значение выражения из выборки.

Применение агрегирующих функций

Простой пример

SELECT SUM (Perimeter) FROM Здания

Выводит сумму периметров зданий.

Одновременное применение нескольких функций

SELECT AVG (Area), Count(*) FROM Здания

Выводит среднюю площадь здания и общее количество зданий.

Применение функций совместно с условиями отбора

SELECT SUM (Area) FROM Здания WHERE Улица="Нахимова"

Возвращает сумму площадей зданий расположенных на улице Нахимова.

Применение выражений в качестве аргументов агрегирующих функций

SELECT SUM(Area/Perimeter*2) FROM Здания

Для каждого здания рассчитывается величина равная Площадь/Периметр*2 и суммируется.

Применение агрегирующих функций в составе выражений

SELECT SQRT (SUM (Area)), "Общий периметр" + SUM (Perimeter) FROM Здания

Возвращает квадратный корень от суммарной площади всех зданий и фразу вида «Общий периметр XXX » , где XXX - суммарный периметр всех зданий.

Использование ключевого слова DISTINCT

SELECT COUNT(DISTINCT Улица) FROM Здания

Возвращает количество разных названий улиц в БД слоя.

Кроме собственно агрегирования или синтеза систем (экономических, технических, организационных) системные аналитики имеют дело с агрегированием данных. К сожалению, системных аналитиков, занятых в экономической сфере, идентифицируют именно с этим работами, забывая о том, что их функции намного шире.

Реально функционирующие системы генерируют слишком много данных, которые плохо обозримы и с которыми трудно работать. Поэтому возникает настоятельная необходимость в агрегировании данных в целях уменьшения размерности анализируемой предметной области.

В настоящее время агрегирование данных в экономических системах часто связывают с построением так называемой системы сбалансированных показателей. Эта система содержит четыре группы показателей, описывающих исследуемую систему в финансово-экономическом, клиентско-контрагентском, бизнес-процессом и образовательноквалификационном разрезах. Все группы показателей связаны между собой и направлены на реализацию единой стратегии компании. Так, повышение образовательно-квалификационного уровня сотрудников обеспечивает повышение эффективности и качества внутренних бизнес-процессов, эффективность бизнес-процессов способствуют лучшему удовлетворению запросов клиентов, а это, в свою очередь, позволяет достичь желаемых финансовых результатов и тем самым удовлетворить ожидания акционеров.

Число показателей в каждой группе на одном уровне управления не должно превышать 7-10. Следовательно, руководитель любого уровня работает с 30-40 показателями одновременно, что не составляет особого труда. Основная трудность заключается в выстраивании информационной природы показателей, где каждый последующий уровень представляет собой агрегат предыдущего. Решение этой задачи входит в круг обязанностей системного аналитика.

Важный пример агрегирования данных дает статистический анализ. Среди различных агрегатов, называемых в этом случае статистиками, т.е. функциями выборочных значений, особое место занимают такие агрегаты, которые извлекают всю полезную информацию об интересующем нас параметре из совокупности наблюдений. Наглядным примером статистического агрегирования является факторный анализ, в котором несколько переменных сводятся в один фактор. При рассмотрении реальных данных самым важным является построение модели-агрегата при отсутствии информации, необходимой для теоретического синтеза статистики. Именно поэтому эту область называют анализом данных, оставляя за математической статистикой задачи алгоритмического синтеза и анализа статистик.

Если агрегируемые данные фиксируются в числовых шкалах, то появляется возможность задать отношение на множестве данных в виде числовой функции многих переменных. Классическим примером такого агрегирования является приведение задачи многокритериальной оптимизации к однокритериальной задаче. Стоимостный анализ в экономике, в котором все существенные для исследуемого явления факторы имеют денежную оценку, а результат представляет собой их алгебраическую сумму, также следует отнести к классу задач агрегирования данных, методы решения которых входят в арсенал системных аналитиков финансово- экономической сферы.

Процедура агрегирования имеет очень широкое смысловое толкование. Кроме очевидного соединения в единое целое составляющих систему элементов, подразумевается проектирование новой системы, интегрирование информации о текущем состоянии

функционирующей системы и ее позиционирование в определенном фазовом пространстве.

Контрольные вопросы

1. Дайте определение агрегирования. Эквивалентны ли понятия «система» и «агрегат»?

2. Как проявляется внутренняя целостность агрегата? Почему при агрегировании системы в ней появляются новые свойства?

3. Приведите примеры эмерджентности системы. Почему эмерджентность считают внутренним свойством системы?

4. Какая связь существует между системообразующим фактором и эмерджентностью системы?

5. Как связаны дифференциация свойств элементов системы с ее организованностью?

6. Что лежит в основе агрегирования системы? Чем вызвана необходимость многопланового описания агрегируемой системы?

7. Что такое конфигуратор системы? Приведите примеры конфигураторов.

8. Сколько структурных описаний должна содержать агрегируемая система? Приведите примеры структурных описаний социокультурных систем.

9. В чем заключается сущность задачи агрегирования данных в экономике?

10. Что представляет собой система сбалансированных показателей?

11. В чем заключается основная задача синтетического подхода к исследованию системы?

Темы рефератов и эссе

Проблемы анализа данных в экономических приложениях.

Слияния и поглощения как примеры агрегирования экономических систем.

Проектирование новых образований.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: