Oktatóanyag: Számított oszlopok létrehozása a Power BI DesktopbanTutorial: Create calculated columns in Power BI Desktop

Időnként az elemzett adatok nem tartalmazzák a kívánt eredményhez szükséges mezőt.Sometimes the data you’re analyzing doesn’t contain a particular field you need to get the results you’re after. Ekkor nyernek jelentőséget a számított oszlopok.This is where calculated columns come in. A számított oszlopok az oszlopok értékeinek meghatározásához Data Analysis Expressions- (DAX-) képleteket használnak, amelyek bármik lehetnek, a több különböző oszlopból származó szöveges értékek összeillesztésétől a numerikus értékek más értékekből történő kiszámításáig.Calculated columns use Data Analysis Expressions (DAX) formulas to define a column’s values, anything from putting together text values from a couple of different columns to calculating a numeric value from other values. Tegyük fel például, hogy az adatokban vannak Város és Állam oszlopok, de Ön egyetlen Hely mezőt szeretne, amelyben mindkettő szerepel, mint például „Miami, FL”.For example, let’s say your data has City and State fields, but you want a single Location field that has both, like "Miami, FL". Pontosan erre szolgálnak a számított oszlopok.This is precisely what calculated columns are for.

A számított oszlopok hasonlóak a mértékekhez, mert mindkettő DAX-képleteken alapul, de a használatuk módja különböző.Calculated columns are similar to measures in that both are based on DAX formulas, but they differ in how they are used. A mértékek gyakran használhatók a vizualizációk Értékek területén, a más mezőkön alapuló eredmények kiszámításához.You often use measures in a visualization's Values area, to calculate results based on other fields. A számított oszlopok új Mezők formájában használhatók a vizualizációk sor, tengely, jelmagyarázat és csoport területein.You use calculated columns as new Fields in the rows, axes, legends, and group areas of visualizations.

Ez az oktatóanyag bemutatja néhány számított oszlop létrehozását és jelentésvizualizációkban való felhasználását a Power BI Desktopban.This tutorial will guide you through understanding and creating some calculated columns and using them in report visualizations in Power BI Desktop.

ElőfeltételekPrerequisites

  • Az oktatóanyag olyan Power BI-felhasználóknak szól, akik már jól ismerik a speciálisabb modellek létrehozásának eljárásait a szolgáltatásban.This tutorial is intended for Power BI users already familiar with using Power BI Desktop to create more advanced models. Ehhez már tudnia kell, hogyan használhatja az Adatok lekérése és a Power Query-szerkesztő funkciót adatok lekérésére, több kapcsolódó táblával való munkára és mezőknek a jelentésvászonhoz történő hozzáadására.You should already know how to use Get Data and the Power Query Editor to import data, work with multiple related tables, and add fields to the Report canvas. Ha még csak most ismerkedik a Power BI Desktoppal, mindenképp tekintse át a Power BI Desktop használatának első lépéseit ismertető témakört.If you’re new to Power BI Desktop, be sure to check out Getting Started with Power BI Desktop.

  • Az oktatóprogram a Power BI Desktop Contoso értékesítési mintát használja, ami azonos a Saját mértékek létrehozása a Power BI Desktopban című oktatóanyagban használt mintával.The tutorial uses the Contoso Sales Sample for Power BI Desktop, the same sample used for the Create your own measures in Power BI Desktop tutorial. Ezek a fiktív Contoso, Inc. vállalattól származó értékesítési adatok egy adatbázisból lettek importálva, így Ön nem tud majd az adatforráshoz kapcsolódni, illetve nem tudja azt megtekinteni a Power Query-szerkesztőben.This sales data from the fictitious company Contoso, Inc. was imported from a database, so you won’t be able to connect to the data source or view it in the Power Query Editor. Töltse le és bontsa ki a fájlt saját számítógépére, majd nyissa meg a fájlt a Power BI Desktopban.Download and extract the file on your own computer, and then open it in Power BI Desktop.

Értékesítési jelentésében Ön termékkategóriákat és alkategóriákat egyetlen értékként kíván megjeleníteni, mint például „Mobiltelefonok – Kellékek”, „Mobiltelefonok – Okostelefonok és PDA-k” és így tovább.In your Sales Report, you want to display product categories and subcategories as single values, like "Cell phones – Accessories", "Cell phones – Smartphones & PDAs", and so on. A Mezők listában nincs ilyen adatokat kínáló mező, van viszont egy ProductCategory (termékkategória) és egy ProductSubcategory (termék-alkategória) mező, mindegyik a saját táblájában.There's no field in the Fields list that gives you that data, but there is a ProductCategory field and a ProductSubcategory field, each in its own table. Ön létrehozhat egy számított oszlopot, amely egyesíti e két oszlop értékeit.You can create a calculated column that combines values from these two columns. A DAX-képletek kihasználhatják a már meglévő modell minden képességét, beleértve a már meglévő táblák közötti kapcsolatokat.DAX formulas can leverage the full power of the model you already have, including relationships between different tables that already exist.

Oszlopok a Mező listában

  1. Ha új oszlopot szeretne létrehozni a ProductSubcategory táblában, kattintson a jobb gombbal, vagy válassza a három pontot ... a ProductSubcategory elem mellett Mezők panelen, majd válassza az Új oszlop lehetőséget a menüből.To create your new column in the ProductSubcategory table, right-click or select the ellipsis ... next to ProductSubcategory in the Fields pane, and select New column from the menu.

    Új oszlop

    Az Új oszlop lehetőség kiválasztásakor, jelentésvászon tetején megjelenik a szerkesztőléc, amelyen elnevezheti az oszlopot, és beírhatja a DAX-képletet.When you select New column, the Formula bar appears along the top of the Report canvas, ready for you to name your column and enter a DAX formula.

    Szerkesztőléc

  2. Alapértelmezés szerint az új számított oszlop neve Oszlop lesz.By default, a new calculated column is named Column. Ha nem nevezi át, akkor a további új oszlopok neve Oszlop 2, Oszlop 3 lesz, és így tovább.If you don’t rename it, additional new columns will be named Column 2, Column 3, and so on. Az oszlopnak célszerű informatívabb nevet adni, ezért mivel az Oszlop neve már ki van jelölve a szerkesztőlécen, a ProductFullCategory név beírásával nevezze át, majd írjon be egy egyenlőségjelet ( = ).You want your column to be more identifiable, so while the Column name is already highlighted in the formula bar, rename it by typing ProductFullCategory, and then type an equals (=) sign.

  3. Az a cél, hogy az új oszlopban lévő értékek a ProductCategory mezőben található névvel kezdődjenek.You want the values in your new column to start with the name in the ProductCategory field. Mivel ez az oszlop egy másik, de kapcsolódó táblában található, a lekéréséhez a RELATED függvény használható.Because this column is in a different but related table, you can use the RELATED function to help you get it.

    Az egyenlőségjel után írja be: r.After the equals sign, type r. Egy legördülő javaslati lista megjeleníti az összes R betűvel kezdődő DAX-függvényt. Az egyes függvényeket kijelölve megjelenik a függvény hatásának leírása.A dropdown suggestion list shows all of the DAX functions beginning with the letter R. Selecting each function shows a description of its effect. A függvénynév beírása közben a javaslatok listája a keresett függvényhez közeli lehetőségekre szűkül.As you type, the suggestion list scales closer to the function you need. Jelölje ki a RELATED függvényt, majd nyomja meg az Enter billentyűt.Select RELATED, and then press Enter.

    Válassza a RELATED függvényt

    Egy nyitó zárójel jelenik meg a RELATED függvénynek átadható, kapcsolódó oszlopok javaslati listájával, és a megadandó paraméterek leírásaival és részleteivel.An opening parenthesis appears, along with another suggestion list of the related columns you can pass to the RELATED function, with descriptions and details of expected parameters.

    Válassza a ProductCategory elemet

  4. A ProductCategory táblában lévő ProductCategory oszlopra van szükség.You want the ProductCategory column from the ProductCategory table. Válassza a ProductCategory[ProductCategory] elemet, nyomja meg az Enter billentyűt, majd írjon be egy záró zárójelet.Select ProductCategory[ProductCategory], press Enter, and then type a closing parenthesis.

    Tipp

    A szintaktikai hibákat leggyakrabban a hiányzó vagy máshová írt záró zárójelek okozzák, bár egyes esetekben a Power BI Desktop automatikusan hozzáadja.Syntax errors are most often caused by a missing or misplaced closing parenthesis, although sometimes Power BI Desktop will add it for you.

  5. Az új értékekben kötőjelekkel és szóközökkel kellene elválasztani a ProductCategories és a ProductSubcategories elemeket, ezért az első kifejezés záró zárójele után írja be a következőket: szóköz, „és”-jel ( & ), idézőjel ( " ), szóköz, kötőjel ( - ), szóköz, idézőjel, „és”-jel.You want dashes and spaces to separate the ProductCategories and ProductSubcategories in the new values, so after the closing parenthesis of the first expression, type a space, ampersand (&), double-quote ("), space, dash (-), another space, another double-quote, and another ampersand. A képletnek most így kell kinéznie:Your formula should now look like this:

    ProductFullCategory = RELATED(ProductCategory[ProductCategory]) & " - " &

    Tipp

    Ha több helyre van szüksége, válassza a lefelé mutató sávnyilat a szerkesztőléc jobb oldalán a képletszerkesztő kibontásához.If you need more room, select the down chevron on the right side of the formula bar to expand the formula editor. A szerkesztőben nyomja le az Alt + Enter billentyűkombinációt, hogy lejjebb menjen egy sorral, és a Tab billentyűt az elmozgatáshoz.In the editor, press Alt + Enter to move down a line, and Tab to move things over.

  6. Írjon be egy nyitó szögletes zárójelet ( [ ), majd válassza a [ProductSubcategory] oszlopot a képlet befejezéséhez.Enter an opening bracket ([), and then select the [ProductSubcategory] column to finish the formula.

    Válassza a ProductSubcategory elemet

    A második kifejezésben nem kell újabb RELATED függvényt használnia a ProductSubcategory tábla hívásához, mert a számított oszlopot ebben a táblában hozza létre.You didn’t need to use another RELATED function to call the ProductSubcategory table in the second expression, because you are creating the calculated column in this table. A [ProductSubcategory] oszlopot a táblanév előtaggal (teljes) vagy anélkül is (nem teljes) beírhatja.You can enter [ProductSubcategory] with the table name prefix (fully-qualified) or without (non-qualified).

  7. A képlet befejezéséhez nyomja le az Enter billentyűt, vagy válassza a szerkesztőlécen lévő pipa jelet.Complete the formula by pressing Enter or selecting the checkmark in the formula bar. Megtörténik a képlet ellenőrzése, majd a ProductFullCategory oszlop neve megjelenik a ProductSubcategory táblában a Mezők panelen.The formula validates, and the ProductFullCategory column name appears in the ProductSubcategory table in the Fields pane.

    A ProductFullCategory oszlop elkészült

    Megjegyzés

    A Power BI Desktopban a számított oszlopok különleges ikont kapnak a Mezők panelen, jelezve, hogy képleteket tartalmaznak.In Power BI Desktop, calculated columns have a special icon in the Fields pane, showing that they contain formulas. A Power BI szolgáltatásban (az Ön Power BI-webhelyén) nem lehet módosítani a képleteket, ezért a számított oszlopoknak nincs ikonja.In the Power BI service (your Power BI site), there’s no way to change formulas, so calculated columns don't have icons.

Az új oszlop felhasználható a jelentésekbenUse your new column in a report

Mostantól az új ProductFullCategory oszlop használatával a SalesAmount ProductFullCategory szerint tekinthető meg.Now you can use your new ProductFullCategory column to look at SalesAmount by ProductFullCategory.

  1. Az összes ProductFullCategory nevet megjelenítő tábla létrehozásához válassza ki a ProductFullCategory oszlopot a ProductSubcategory táblából, vagy húzza onnan a jelentésvászonra.Select or drag the ProductFullCategory column from the ProductSubcategory table onto the Report canvas to create a table showing all of the ProductFullCategory names.

    ProductFullCategory tábla

  2. Az egyes ProductFullCategory elemekhez tartozó SalesAmount értékesítési összeg megjelenítéséhez válassza ki vagy húzza a táblába a SalesAmount mezőt a Sales táblából.Select or drag the SalesAmount field from the Sales table into the table to show the SalesAmount for each ProductFullCategory.

    SalesAmount (Értékesítés összege) a ProductFullCategory elemek alapján

Hozzon létre egy számított oszlopot, amely IF függvényt alkalmazCreate a calculated column that uses an IF function

A Contoso értékesítési minta aktív és inaktív üzletekre vonatkozó értékesítési adatokat is tartalmaz.The Contoso Sales Sample contains sales data for both active and inactive stores. Egy Active StoreName (aktív üzlet név) mező létrehozásával biztosíthatja, hogy a jelentésében az aktív üzletek értékesítései egyértelműen elkülönüljenek az inaktív üzletek értékesítéseitől.You want to ensure that active store sales are clearly separated from inactive store sales in your report by creating an Active StoreName field. Az új Active StoreName számított oszlopban mindegyik aktív üzlet megjelenik az üzlet teljes nevével, míg az inaktív üzletek értékesítéseit egyetlen „Inaktív” sorelem alatt csoportosítja a rendszer.In the new Active StoreName calculated column, each active store will appear with the store's full name, while the sales for inactive stores will be grouped together in one line item called Inactive.

Szerencsére a Stores (Üzletek) táblának van egy Status (Állapot) nevű oszlopa, amelyben az aktív üzleteket „Be”, az inaktív üzleteket „Ki” érték jelzi, amelyek használatával értékek hozhatók létre az új Active StoreName oszlop számára.Fortunately, the Stores table has a column named Status, with values of "On" for active stores and "Off" for inactive stores, which we can use to create values for our new Active StoreName column. A DAX-képlet a logikai IF függvényt fogja használni az egyes üzletek Status értékének ellenőrzése, és az eredménytől függően fog egy bizonyos értéket kiadni.Your DAX formula will use the logical IF function to test each store's Status and return a particular value depending on the result. Ha egy üzlet Status értéke „On” („Be”), akkor a képlet kiadja az üzlet nevét.If a store's Status is "On", the formula will return the store's name. Ha az észlelt érték „Off” („Ki”), akkor a képlet „Inactive”(„Inaktív”) Active StoreName értéket fog hozzárendelni.If it’s "Off", the formula will assign an Active StoreName of "Inactive".

  1. A Stores táblában hozzon létre egy új számított oszlopot, és a szerkesztőlécen adja neki az Active StoreName nevet.Create a new calculated column in the Stores table and name it Active StoreName in the formula bar.

  2. Az = jel után kezdje beírni az IF szót.After the = sign, begin typing IF. A javaslati listában megjelennek a választható lehetőségek.The suggestion list will show what you can add. Válassza ki az IF függvényt.Select IF.

    Válassza ki az IF függvényt

  3. Az IF függvény első argumentuma annak logikai ellenőrzése, hogy az adott üzlet Status értéke „On”-e.The first argument for IF is a logical test of whether a store's Status is "On". Írjon be egy nyitó szögletes zárójelet [ , am oszlopokat listáz a Stores táblából, majd válassza a [Status] elemet.Type an opening bracket [, which lists columns from the Stores table, and select [Status].

    Válassza a Status elemet

  4. Közvetlenül a [Status] után írja be a következőt: = "On" , majd írjon be egy vesszőt ( , ) az argumentum befejezéséhez.Right after [Status], type ="On", and then type a comma (,) to end the argument. Az eszköztipp azt javasolja, hogy most adja meg a kiadandó értéket arra az esetre, ha az eredmény TRUE (igaz).The tooltip suggests that you now need to add a value to return when the result is TRUE.

    TRUE érték hozzáadása

  5. Ha az üzlet Állapot értéke „On”, akkor meg kell jeleníteni az üzlet nevét.If the store's status is "On", you want to show the store’s name. Írjon be egy nyitó szögletes zárójelet [ , és válassza ki a [StoreName] oszlopot, majd írjon be egy újabb vesszőt.Type an opening bracket ([) and select the [StoreName] column, and then type another comma. Az eszköztipp most azt jelzi, hogy adja meg a kiadandó értéket arra az esetre, ha az eredmény FALSE (hamis).The tooltip now indicates that you need to add a value to return when the result is FALSE.

    HAMIS érték hozzáadása

  6. Az értéknek Inactive-nek kell lennie, ezért a szerkesztőlécen írja be az "Inactive" kifejezést, majd fejezze be a képletet az Enter billentyű lenyomásával vagy a szerkesztőlécen a pipa jel választásával.You want the value to be "Inactive", so type "Inactive", and then complete the formula by pressing Enter or selecting the checkmark in the formula bar. Megtörténik a képlet ellenőrzése, majd az új oszlop neve megjelenik a Stores táblában a Mezők panelen.The formula validates, and the new column's name appears in the Stores table in the Fields pane.

    Active StoreName oszlop

  7. Az új Active StoreName oszlop bármely más mezőhöz hasonlóan használható a vizualizációkban.You can use your new Active StoreName column in visualizations just like any other field. A SalesAmounts értékek Active StoreName szerint történő megjelenítéséhez jelölje ki az Active StoreName mezőt, vagy húzza azt a vászonra, majd jelölje ki a SalesAmount mezőt, vagy húzza azt a táblába.To show SalesAmounts by Active StoreName, select the Active StoreName field or drag it onto the Report canvas, and then select the SalesAmount field or drag it into the table. Ebben a táblában az aktív üzletek önállóan, név szerint jelennek meg, de az inaktív üzleteket a rendszer a tábla végére, Inactive címmel csoportosítja.In this table, active stores appear individually by name, but inactive stores are grouped together at the end as Inactive.

    A SalesAmount értékeket Active StoreName szerint megjelenítő tábla

Az oktatóanyag összefoglalásaWhat you've learned

A számított oszlopok tovább gazdagíthatják az adatokat, és megkönnyíthetik azok elemzését.Calculated columns can enrich your data and provide easier insights. Bemutattuk, hogyan történik a számított oszlopok létrehozása a Mezők panelen és a szerkesztőlécen, hogyan használhatók a javaslati listák és az eszköztippek a képletek összeállításához, hogyan kell megfelelő argumentumokkal meghívni például a RELATED és az IF DAX-függvényeket, és hogyan lehet felhasználni a számított oszlopokat a jelentésvizualizációkban.You've learned how to create calculated columns in the Fields pane and formula bar, use suggestion lists and tooltips to help construct your formulas, call DAX functions like RELATED and IF with the appropriate arguments, and use your calculated columns in report visualizations.

További lépésekNext steps

Ha szeretné a DAX-képleteket részletesebben megismerni, és összetettebb képletekkel szeretne létrehozni számított oszlopokat, olvassa el a cikket, amely a DAX alapszintű használatát ismerteti a Power BI Desktopban.If you want to take a deeper dive into DAX formulas and create calculated columns with more advanced formulas, see DAX Basics in Power BI Desktop. Ez a cikk a DAX alapvető fogalmaira, a szintaxisra, a függvényekre és a környezet alaposabb megértésére összpontosít.This article focuses on fundamental concepts in DAX, such as syntax, functions, and a more thorough understanding of context.

Mindenképp vegye fel a Data Analysis Expressions (DAX) referenciát a kedvencei közé.Be sure to add the Data Analysis Expressions (DAX) Reference to your favorites. Ebben találja részletesen leírva a DAX-szintaxist, az operátorokat, valamint a több mint 200 DAX-függvényt.This is where you'll find detailed info on DAX syntax, operators, and over 200 DAX functions.