Datové typy v Power Query

Datové typy v Power Query slouží ke klasifikaci hodnot tak, aby měly strukturovanější datovou sadu. Datové typy jsou definovány na úrovni pole – hodnoty uvnitř pole jsou nastaveny tak, aby odpovídaly datovému typu pole.

Datový typ sloupce se zobrazí na levé straně záhlaví sloupce s ikonou, která symbolizuje datový typ.

Zobrazuje ikony běžných datových typů zobrazené na levé straně záhlaví sloupce tabulky v podokně náhledu dat.

Poznámka:

Power Query poskytuje sadu kontextových transformací a možností na základě datového typu sloupce. Když například vyberete sloupec s datovým typem Date, získáte transformace a možnosti, které platí pro daný datový typ. K těmto transformacím a možnostem dochází v rozhraní Power Query, například na kartách Transformace a Přidání sloupců a v možnostech inteligentního filtru.

Nejběžnější datové typy používané v Power Query jsou uvedené v následující tabulce. I když je nad rámec tohoto článku, najdete úplný seznam datových typů v článku Typy jazyka vzorců Power Query M.

Datový typ Ikona Popis
Text Text. Datový řetězec znaků Unicode. Můžou to být řetězce, čísla nebo kalendářní data reprezentovaná v textovém formátu. Maximální délka řetězce je 268 435 456 znaků Unicode (kde každý znak Unicode je dva bajty) nebo 536 870 912 bajtů.
Pravda nebo nepravda Pravda/Nepravda. Logická hodnota true nebo false.
Desetinné číslo Desetinné číslo. Představuje 64bitové číslo s plovoucí desetinou čárkou (osm bajtů). Jedná se o nejběžnější typ čísla a odpovídá číslům, jak si je obvykle myslíte. I když je navržený tak, aby zpracovával čísla s desetinnými hodnotami, zpracovává také celá čísla. Typ Desetinné číslo dokáže zpracovat záporné hodnoty od -1,79E +308 do -2,23E –308, 0 a kladných hodnot od 2,23E –308 do 1,79E + 308. Například čísla jako 34, 34,01 a 34,000367063 jsou platná desetinná čísla. Největší přesnost, kterou lze reprezentovat v typu Desetinné číslo, je 15 číslic dlouhé. Oddělovač desetinných míst může nastat kdekoli v čísle. Typ Desetinné číslo odpovídá způsobu, jakým Excel ukládá čísla. Všimněte si, že binární číslo s plovoucí desetinou čárkou nemůže představovat všechna čísla v podporovaném rozsahu s přesností 100 %. Menší rozdíly v přesnosti proto mohou nastat při reprezentaci určitých desetinných čísel.
Pevné desetinné číslo Měna: Tento datový typ má také pevné umístění oddělovače desetinných míst. Oddělovač desetinných míst má vždy čtyři číslice vpravo a umožňuje 19 číslic významnosti. Největší hodnota, kterou může představovat, je 922 337 203 685 477,5807 (kladné nebo záporné). Na rozdíl od desetinného čísla je typ Číslo s pevnou desetinnou čárkou vždy přesný a je proto užitečný v případech, kdy by nepřesnost zápisu s plovoucí desetinnou čárkou mohla představovat chyby.
číslo Kdo le Kdo le Number. Představuje 64bitovou (osmibajtů) celočíselnou hodnotu. Vzhledem k tomu, že se jedná o celé číslo, nemá číslice napravo od desetinného místa. Umožňuje 19 číslic; kladná nebo záporná celá čísla mezi –9 223 372 036 854 775 807 (–2^63+1) a 9 223 372 036 854 775 806 (2^63–2). Může představovat největší možnou přesnost různých číselných datových typů. Stejně jako u typu Číslo s pevným počtem desetinných míst může být typ číslování Kdo užitečné v případech, kdy potřebujete řídit zaokrouhlování.
Procento Procento. V zásadě je to stejné jako typ Desetinné číslo, ale má masku pro formátování hodnot ve sloupci jako procento v okně Editor Power Query.
Datum a čas Datum a čas. Představuje hodnotu data i času. Pod kryty je hodnota Datum a čas uložena jako typ Desetinné číslo, takže můžete ve skutečnosti převést mezi těmito dvěma hodnotami. Časová část data je uložena jako zlomek na celé násobky 1/300 sekund (3,33 ms). Podporují se data mezi roky 1900 a 9999.
Date Datum. Představuje pouze datum (bez časového úseku). Při převodu na model je datum stejné jako hodnota data a času s nulou pro desetinnou hodnotu.
Time Čas. Představuje pouze čas (bez části data). Při převodu na model je hodnota Time stejná jako hodnota data a času bez číslic nalevo od desetinné čárky.
Datum/čas/časové pásmo Datum/čas/časové pásmo. Představuje datum a čas UTC s posunem časového pásma. Při načtení do modelu se převede na datum a čas.
Doba trvání Doba trvání. Představuje dobu, která se při načtení do modelu převede na typ Desetinné číslo. Jako typ Desetinné číslo se dá přičíst nebo odečíst z pole Datum a čas se správnými výsledky. Vzhledem k tomu, že se jedná o typ Desetinné číslo, můžete ho snadno použít ve vizualizacích, které zobrazují velikost.
Binární Binární. Datový typ Binary lze použít k reprezentaci jakýchkoli jiných dat s binárním formátem.
Jakýkoli Cokoliv. Datový typ Any je stav zadaný sloupcem, který nemá explicitní definici datového typu. Libovolný datový typ, který klasifikuje všechny hodnoty. Doporučujeme vždy explicitně definovat datové typy sloupců pro dotazy z nestrukturovaných zdrojů a vyhnout se tomu, abyste jako výstup dotazu měli všechny sloupce s datovým typem Libovolný.

Detekce datových typů

Detekce datových typů probíhá automaticky při připojování k:

  • Strukturované zdroje dat, jako jsou databáze, Power Query načte schéma tabulky ze zdroje dat a automaticky zobrazí data pomocí správného datového typu pro každý sloupec.

  • Nestrukturované zdroje, jako jsou Excel, CSV a textové soubory, Power Query automaticky detekuje datové typy kontrolou hodnot v tabulce. Automatické zjišťování datových typů je ve výchozím nastavení povolené v Power Query pro nestrukturované zdroje.

K automatickému rozpoznání datových typů sloupců v tabulce můžete použít příkaz Zjistit datový typ ve skupině Libovolný sloupec na kartě Transformace .

Příkaz Zjistit datový typ na kartě Transformace

Jak definovat datový typ sloupce

Datový typ sloupce můžete definovat nebo změnit na libovolném ze čtyř míst:

  • Na kartě Domů ve skupině Transformace v rozevírací nabídce Datový typ

    Nabídka Datový typ na kartě Domů

  • Na kartě Transformace ve skupině Libovolný sloupec v rozevírací nabídce Datový typ

    Nabídka Datový typ na kartě Transformace

  • Výběrem ikony na levé straně záhlaví sloupce

    Nabídka datových typů v záhlaví sloupce

  • V místní nabídce sloupce v části Změnit typ

    Příkaz Změnit typ v místní nabídce sloupce

Automatická detekce datového typu a záhlaví sloupců

Toto nastavení je určené speciálně pro nestrukturované zdroje. Pomůže vám to automaticky kontrolovat a zjišťovat typy sloupců a záhlaví na základě prvních 200 řádků tabulky. Když je toto nastavení povolené, Power Query automaticky přidá do dotazu dva kroky:

  • Zvýšení úrovně záhlaví sloupců: Zvýší úroveň prvního řádku tabulky jako záhlaví sloupce.
  • Změněný typ: Převede hodnoty z libovolného datového typu na datový typ na základě kontroly hodnot z každého sloupce.

Toto nastavení je ve výchozím nastavení povoleno. Pokud chcete toto nastavení zakázat nebo povolit, postupujte podle kroků, které platí pro prostředí Power Query.

Konfigurace automatické detekce datových typů v Power Query Online

Na kartě Domů vyberte Možnosti a pak vyberte Možnosti projektu. V okně Možnosti projektu zaškrtněte políčko Automaticky zjišťovat typy sloupců a záhlaví pro nestrukturované zdroje.

Možnost automatického zjišťování datového typu v možnostech projektu

Konfigurace automatické detekce datových typů v Power Query pro Desktop

Toto chování můžete definovat jak na globální úrovni, tak na úrovni souboru v okně Možnosti (v Editor Power Query, na kartě Soubor vyberte Možnosti a nastavení>Možnosti).

  • Globální: V levém podokně v části Globální vyberte Načtení dat. V pravém podokně v části Detekce typů můžete vybrat některou ze tří konfigurací detekce typů, které se použijí pro každý nový soubor vytvořený v aplikaci:

    • Vždy zjišťovat typy sloupců a hlavičky pro nestrukturované zdroje
    • Detekce typů sloupců a hlaviček pro nestrukturované zdroje podle nastavení jednotlivých souborů
    • Nikdy nezjistíte typy sloupců a hlavičky pro nestrukturované zdroje.

    Globální detekce typů

  • Aktuální soubor: V levém podokně v části Aktuální soubor vyberte Načtení dat. V pravém podokně v části Detekce typu vyberte, jestli chcete povolit nebo zakázat detekci typů pro aktuální soubor.

    Možnost automatického zjišťování datového typu v Power Query pro Desktop

Národní prostředí dokumentu nebo projektu

Power Query zpracovává dvě odlišné komponenty, které spravují způsob, jakým věci vypadají a interpretují:

  • Lokalizace: komponenta, která říká Power Query v jakém jazyce se má zobrazit.
  • Globalizace: komponenta, která zpracovává formátování hodnot, kromě interpretace textových hodnot.

Národní prostředí je jedna hodnota, která obsahuje lokalizační i globalizační komponenty. Národní prostředí slouží k interpretaci textových hodnot a jejich převodu na jiné datové typy. Například národní prostředí (USA) znamená, že lokalizace je v USA angličtině a globalizaci nebo formátu hodnoty, je založená na standardech použitých v USA.

Když Power Query definuje datový typ sloupce nebo převádí z jednoho datového typu na jiný, musí interpretovat hodnoty, které se mají převést, aby je mohl transformovat na jiný datový typ.

  • V Power Query Online je tato interpretace definována v možnostech projektu v části Národní prostředí.

    Nastavení národního prostředí v Power Query Online

  • Power Query pro Desktop automaticky rozpozná místní formát operačního systému a použije ho k interpretaci hodnot pro převod datového typu. Pokud chcete tuto konfiguraci národního prostředí přepsat, otevřete okno Možnosti dotazu a v levém podokně v části Aktuální soubor vyberte Místní nastavení. Odsud můžete změnit národní prostředí na požadované nastavení.

    Nastavení národního prostředí v Power Query pro Desktop

Toto nastavení národního prostředí je důležité pro interpretaci textových hodnot do konkrétního datového typu. Představte si například, že máte národní prostředí nastavené jako angličtina (USA), ale sloupec v jednom ze souborů CSV má kalendářní data formátovaná ve formátu Spojeného království dne/měsíce/roku.

Ukázková původní tabulka s kalendářními daty ve sloupci Date (Datum) nastavenou na formát UK dne a potom měsíce a roku.

Při pokusu o nastavení datového typu sloupce Date na Date (Datum) se zobrazí chybové hodnoty.

Chyba převodu datového typu

K těmto chybám dochází, protože použité národní prostředí se pokouší interpretovat datum ve formátu angličtiny (USA), což je měsíc/den/rok. Vzhledem k tomu, že v kalendáři není žádný měsíc 22, způsobí chybu.

Místo toho, abyste se pokusili vybrat datový typ Datum, můžete kliknout pravým tlačítkem myši na záhlaví sloupce, vybrat Změnit typ a pak vybrat Použít národní prostředí.

Použití národního prostředí v místní nabídce sloupce

V dialogovém okně Změnit typ sloupce s národním prostředím vyberete datový typ, který chcete nastavit, ale také vyberete, které národní prostředí se má použít, což v tomto případě musí být angličtina (Spojené království).

Změňte typ sloupce s národním prostředím.

Pomocí tohoto národního prostředí bude Power Query moct správně interpretovat hodnoty a převést tyto hodnoty na správný datový typ.

Konečná tabulka po použití národního prostředí s kalendářními daty ve sloupci Date (Datum) nastavenou na formát měsíce a potom dne a roku.

Ověření konečných hodnot kalendářních dat

Formátování hodnot je řízeno hodnotou globalizace. Pokud máte pochybnosti o hodnotě zobrazené v Power Query, můžete převod hodnot kalendářních dat ověřit přidáním nových sloupců pro den, měsíc a rok z hodnoty. Uděláte to tak, že vyberete sloupec Datum a přejdete na kartu Přidat sloupec na pásu karet. Ve skupině sloupců Datum a čas uvidíte možnosti sloupce kalendářního data.

Výběr částí hodnoty sloupce kalendářního data, které se mají umístit do nového sloupce

Tady můžete extrahovat části hodnoty kalendářního data, například číslo roku, číslo měsíce, číslo dne nebo ještě více sloupců extrahovaných ze sloupce Datum .

Části kalendářních dat.

Pomocí těchto sloupců můžete ověřit, zda byla hodnota data správně převedena.

Matice převodu datových typů

Následující matice je navržená tak, aby vám poskytla rychlý pohled na proveditelnost převodu datového typu z jednoho datového typu na jiný.

Poznámka:

Převod v této matici začíná původním datovým typem ve sloupci Datové typy . Každý výsledek převodu na nový typ se zobrazí v řádku původního datového typu.

Typy dat Desetinné číslo. Měna Celé číslo Procento Datum a čas Datum Čas Datum/čas/časové pásmo Doba trvání Text True/false
Desetinné číslo. Desetinné číslo Je to možné, ale zkrátí původní hodnotu. Je to možné, ale zkrátí původní hodnotu. Možné. Možné Je to možné, ale zkrátí původní hodnotu. Není to možné. Je to možné, ale přičte hodnoty k původní hodnotě. Možné Možné Možné
Měna: Měny Možné Je to možné, ale zkrátí původní hodnotu. Možné Možné Je to možné, ale zkrátí původní hodnotu. Není možné Je to možné, ale přičte hodnoty k původní hodnotě. Možné Možné Možné
Kdo le number.číslo Kdo le Možné Možné Možné Možné Možné Není možné Je to možné, ale přičte hodnoty k původní hodnotě. Možné Možné Možné
Procento. Procento Možné Je to možné, ale zkrátí původní hodnotu. Je to možné, ale zkrátí původní hodnotu. Možné Možné Není možné Je to možné, ale přičte hodnoty k původní hodnotě. Možné Možné Možné
Datum a čas. Datum a čas Možné Je to možné, ale zkrátí původní hodnotu. Je to možné, ale zkrátí původní hodnotu. Možné Je to možné, ale zkrátí původní hodnotu. Je to možné, ale zkrátí původní hodnotu. Je to možné, ale přičte hodnoty k původní hodnotě. Není možné Možné Není možné
Datum. Datum Možné Možné Možné Možné Možné Není možné Je to možné, ale přičte hodnoty k původní hodnotě. Není možné Možné Není možné
Čas. Čas Možné Možné Možné Možné Je to možné, ale přičte hodnoty k původní hodnotě. Není možné Je to možné, ale přičte hodnoty k původní hodnotě. Není možné Možné Není možné
Datum/čas/časové pásmo. Datum/čas/časové pásmo Možné Je to možné, ale zkrátí původní hodnotu. Je to možné, ale zkrátí původní hodnotu. Možné Je to možné, ale zkrátí původní hodnotu. Je to možné, ale zkrátí původní hodnotu. Je to možné, ale zkrátí původní hodnotu. Není možné Možné Není možné
Doba trvání. Doba trvání Možné Je to možné, ale zkrátí původní hodnotu. Je to možné, ale zkrátí původní hodnotu. Možné Není možné Není možné Není možné Není možné Možné Není možné
Text. Text Možné Možné Možné Možné Možné Možné Možné Možné Možné Možné
Pravda/Nepravda. Pravda nebo nepravda Možné Možné Možné Možné Není možné Není možné Není možné Není možné Není možné Možné
Ikona Popis
Možné Možné
Není možné Není možné
Je to možné, ale přičte hodnoty k původní hodnotě. Je to možné, ale přičte hodnoty k původní hodnotě.
Je to možné, ale zkrátí původní hodnotu. Je to možné, ale zkrátí původní hodnotu.