“Окно, соединения и агрегаты” действительно на английском языке. Позвольте мне объяснить эти концепции и предоставить вам примеры кода для каждой. Итак, начнем:
- Окно.
Окно — это разделение данных на более мелкие, управляемые разделы или окна для анализа или обработки. Он позволяет выполнять вычисления над определенным подмножеством данных, а не над всем набором данных.
Пример кода с использованием SQL:
SELECT
customer_id,
order_date,
order_amount,
SUM(order_amount) OVER (PARTITION BY customer_id ORDER BY order_date) AS cumulative_amount
FROM
orders;
В этом примере функция SUMприменяется к разделу данных, определенному столбцом customer_idи упорядоченному по столбцу order_date. Он рассчитывает совокупную сумму заказа для каждого клиента.
- Соединения.
Объединения объединяют строки из двух или более таблиц на основе связанных столбцов. Они позволяют извлекать данные, распределенные по нескольким таблицам, путем указания того, как эти таблицы связаны.
Пример кода с использованием SQL:
SELECT
customers.customer_id,
customers.customer_name,
orders.order_id,
orders.order_date
FROM
customers
JOIN
orders ON customers.customer_id = orders.customer_id;
В этом примере выполняется внутреннее соединение между таблицами customersи ordersна основе столбца customer_id. Он извлекает идентификатор клиента, имя клиента, идентификатор заказа и дату заказа для сопоставления записей в обеих таблицах.
- Агрегации.
Агрегации включают в себя вычисление сводной статистики или показателей на основе набора данных. Они позволяют рассчитывать такие значения, как суммы, средние значения, значения, минимумы, максимумы и т. д., по одному или нескольким столбцам.
Пример кода с использованием Python и pandas:
import pandas as pd
data = {'Product': ['A', 'B', 'A', 'B', 'A', 'B'],
'Sales': [100, 200, 150, 300, 120, 250]}
df = pd.DataFrame(data)
total_sales = df['Sales'].sum()
average_sales = df['Sales'].mean()
max_sales = df['Sales'].max()
print('Total Sales:', total_sales)
print('Average Sales:', average_sales)
print('Max Sales:', max_sales)
В этом примере Python с использованием библиотеки pandas мы создаем DataFrame с двумя столбцами: «Продукт» и «Продажи». Затем мы рассчитываем общий объем продаж, средний объем продаж и максимальный объем продаж, используя соответствующие функции агрегирования.