Udostępnij za pośrednictwem


Dodawanie kolumny warunkowej

Za pomocą dodatku Power Query można tworzyć nowe kolumny, których wartości są oparte na co najmniej jednym warunkach zastosowanych do innych kolumn w tabeli.

Polecenie Kolumna warunkowa znajduje się na karcie Dodaj kolumnę w grupie Ogólne.

Screenshot of the Power Query ribbon with the Add column tab open and the Conditional column option emphasized.

Dodawanie kolumny warunkowej

W tym przykładzie użyto tabeli pokazanej na poniższej ilustracji.

Screenshot of the sample table to use when adding a conditional column.

W tej tabeli masz pole, które daje grupę CustomerGroup. Masz również różne ceny dotyczące tego klienta w polach Cena warstwy 1, Cena warstwy 2 i Cena warstwy 3. W tym przykładzie twoim celem jest utworzenie nowej kolumny o nazwie Cena końcowa na podstawie wartości znalezionej w polu CustomerGroup . Jeśli wartość w polu CustomerGroup jest równa 1, chcesz użyć wartości z pola Warstwa 1 Cena. W przeciwnym razie użyjesz wartości z warstwy 3 Cena.

Aby dodać tę kolumnę warunkową, wybierz pozycję Kolumna warunkowa. W oknie dialogowym Dodawanie kolumny warunkowej zdefiniuj następujące sekcje:

  • Nazwa nowej kolumny: definiuje nazwę nowej kolumny. W tym przykładzie użyj nazwy Cena końcowa.
  • Klauzule warunkowe: definiuje klauzule warunkowe. Możesz dodać więcej klauzul, wybierając pozycję Dodaj klauzulę. Każda klauzula warunkowa jest testowana w kolejności wyświetlanej w oknie dialogowym od góry do dołu. Każda klauzula ma cztery części:
    • Nazwa kolumny: z listy rozwijanej wybierz kolumnę do użycia na potrzeby testu warunkowego. W tym przykładzie wybierz pozycję CustomerGroup.
    • Operator: wybierz typ testu lub operatora dla testu warunkowego. W tym przykładzie wartość z kolumny CustomerGroup musi być równa 1, więc wybierz wartość równa.
    • Wartość: wprowadź wartość lub wybierz kolumnę do użycia na potrzeby testu warunkowego. W tym przykładzie wprowadź wartość 1.
    • Dane wyjściowe: jeśli test jest dodatni, wartość wprowadzona tutaj lub wybrana kolumna to dane wyjściowe. W tym przykładzie , jeśli wartość CustomerGroup jest równa 1, wartość output powinna być wartością z kolumny Warstwa 1 Cena .
  • Końcowa klauzula Else: Jeśli żadna z powyższych klauzul nie daje dodatniego testu, dane wyjściowe tej operacji są zdefiniowane tutaj jako ręcznie wprowadzona wartość lub wartość z kolumny. W takim przypadku dane wyjściowe są wartością z kolumny Cena warstwy 3.

Screenshot of the Add conditional column dialog with all of the example values filled in.

Wynikiem tej operacji jest nowa kolumna Cena końcowa zawierająca wartości z kolumn cen warstwy 1 i warstwy 3.

Screenshot of the table with the Final Price column containing the Any data type produced by the example conditional clauses.

Uwaga

Nowe kolumny warunkowe nie mają zdefiniowanego typu danych. Możesz dodać nowy krok, aby zdefiniować typ danych dla tej nowo utworzonej kolumny, wykonując kroki opisane w temacie Typy danych w dodatku Power Query.

Dodawanie i organizowanie wielu klauzul

W tym przykładzie zmienimy cel. Nowe klauzule warunkowe to:

  • Jeśli wartość z kolumny CustomerGroup jest równa 1, dane wyjściowe są wartością z kolumny Warstwa 1 Cena .
  • Jeśli wartość z kolumny CustomerGroup jest równa 2, dane wyjściowe są wartością z kolumny Warstwa 2 Cena .
  • Jeśli żadna z poprzednich testów nie jest dodatnia, wartość Output jest wartością z kolumny Cena w warstwie 3.

Screenshot of Add conditional column with two different conditional clauses defined for the values of the Final Price column.

Uwaga

Na końcu każdej klauzuli możesz wybrać przycisk wielokropka (...) w celu usunięcia, przeniesienia w górę lub przeniesienia klauzuli w dół.

Wynikiem tej operacji jest kolumna Cena końcowa zawierająca ceny z kolumn cen warstwy 1, ceny warstwy 2 i ceny warstwy 3.

Screenshot of the table with the Final Price that contains the Any data type produced by the multiple conditional clauses.