Простая концепция (с поездами).

Я то, что вы называете «супер-пассажиром». Я просыпался в 5 утра. Выходите за дверь в 5:30, садитесь на поезд и приходите на работу к 8:00. Это похоже на кошмар. Я люблю свою работу, и я люблю ее достаточно, чтобы делать это. Затем пришла пандемия, и мне больше не приходится делать это так часто. Я благодарен за это, но какое это имеет отношение к фильтру Power BI и контексту строки?

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

Я очень наглядный человек. Я поясню, что я имею в виду здесь.

Вот моя попытка нарисовать поезд в Excel. Здесь вы можете увидеть, что в этом поезде 3 вагона и диспетчерская.

Итак, что здесь означает фильтр и контекст строки?

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

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

Здесь контекстом фильтра будут сиденья первого вагона и у окна. Контекстом строки будут отдельные сиденья. Подсчет того, сколько они потратили, будет суммой.

Если вы переведете это в Power BI, это будет что-то вроде этого.

A =
SUMX (
    FILTER ( Train, 
Coach == "First" && Seats == "Windows" && Family == "Smith" ),
    [Ticket_Price]
)

Здесь вы бы сказали Power BI подойти к первому тренеру, спуститься по сиденьям у окна, найти семейную группу - это контекст фильтра. Следующий вопрос не менее, если не важнее.

Что ты хочешь с этим делать? Power BI идет к месту, но не знает, что делать. Он должен знать, что делать, когда доберется туда! Это контекст строки. Здесь с помощью SUMX вы указываете Power BI суммировать, строка за строкой, или, в нашей метафоре, место за местом, цену билета.

А теперь еще один пример: что, если я хочу знать во втором автобусе общую стоимость мест у окна и у прохода с разбивкой по занятости?

Вы, как инспектор по тарифам, снова пошли бы ко второму вагону, подошли бы к местам у окна и местам у прохода. Что нам теперь делать? Теперь нам нужен контекст строки. Что делаем по строкам? Нам нужно сложить стоимость сидений у окна и у прохода. Это SUMX в Power BI. Вы сложите цену по месту у окна и цену места у прохода, а затем перейдите к следующему ряду и сделайте то же самое.

По сути, это контекст фильтра и строки. В Power BI вы больше не смотрите на поезда, а смотрите на таблицы. Вам нужно будет отфильтровать таблицы по определенным критериям, а затем агрегировать.

Здесь, когда пользователи фильтруют, скорее всего, визуально, они будут отсекать по номерам и стилю тренеров, занятости и т. Д. Это будет контекст фильтра. Наконец, для расчета Price * Promotion будет использоваться контекст строки, к которому оно применяется.

Хорошо, а что насчет всего этого? ВСЕ, ЗА ИСКЛЮЧЕНИЕМ, ВСЕ ВЫБРАННЫЕ и ВСЕ? Что означают эти термины?

Вернемся к нашим поездам. Вы инспектор по тарифам, но теперь у вас есть помощник. Этот помощник поможет вам, записав ваши итоги по группам. Это функция ALLEXCEPT в Power BI.

Визуально это снова можно увидеть в поезде.

В виде таблицы в Power BI она будет выглядеть примерно так.

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

Я не буду вдаваться в подробности, но концепция та же, они действуют как помощники в вашей задаче. С точки зрения Microsoft, они изменяют «контекст» ваших фильтров.

Надеюсь, это поможет прояснить, что означают контекст фильтра и контекст строки в Power BI. Конечно, это всего лишь поезд. Это только помогает проиллюстрировать простую концепцию: вы можете увидеть много поездов, соединенных на одном пути и т. Д. Концепция та же.

Я постараюсь объяснить это в своей следующей статье :)

Надеюсь, это поможет вам в путешествии по данным!