Поделиться через


Типы данных в Power Query

Типы данных в Power Query используются для классификации значений для более структурированного набора данных. Типы данных определяются на уровне поля. Значения внутри поля задаются для соответствия типу данных поля.

Тип данных столбца отображается слева от заголовка столбца значком, символизирующим тип данных.

Снимок экрана: значки распространенных типов данных, отображаемые в левой части заголовка столбца таблицы в области предварительного просмотра данных.

Замечание

Power Query предоставляет набор контекстных преобразований и параметров на основе типа данных столбца. Например, при выборе столбца с типом данных Date вы получаете преобразования и параметры, которые применяются к конкретному типу данных. Эти преобразования и параметры происходят в интерфейсе Power Query, например на вкладках преобразования и добавления столбцов и параметров интеллектуального фильтра.

Наиболее распространенные типы данных, используемые в Power Query, перечислены в следующей таблице. Несмотря на то, что эта информация выходит за рамки данной статьи, вы можете найти список часто используемых типов данных в статье Power Query M Типы и преобразование типов. Существует также полный список типов данных в статье " Типы языков формул Power Query M".

Тип данных Icon Description
Text Строка данных символов Юникода. Может быть строками, числами или датами, представленными в текстовом формате. Максимальная длина строки составляет 268 435 456 символов Юникода (где каждый символ Юникода составляет 2 байта) или 536 870 912 байт.
True/False Логическое значение True или False.
Десятичное число Представляет 64-разрядное число с плавающей запятой (восемь байтов). Это наиболее распространённый тип числа, и он соответствует числам, как вы обычно о них думаете. Хотя он предназначен для обработки чисел с дробными значениями, он также обрабатывает целые числа. Тип десятичного числа может обрабатывать отрицательные значения от –1,79E +308 до –2.23E –308, 0 и положительные значения от 2.23E –308 до 1,79E + 308. Например, числа, такие как 34, 34.01 и 34.000367063, являются допустимыми десятичными числами. Самая большая точность, которая может быть представлена в типе десятичного числа, составляет 15 цифр длиной. Десятичный разделитель может находиться в любом месте числа. Тип десятичного числа соответствует хранилищу чисел Excel. Обратите внимание, что двоичное число с плавающей запятой не может представлять все числа в поддерживаемом диапазоне с точностью 100%. Таким образом, незначительные различия в точности могут возникать при представлении определенных десятичных чисел.
Фиксированное десятичное число Также известный как тип валюты, этот тип данных имеет фиксированное расположение для десятичного разделителя. Десятичный разделитель всегда имеет четыре цифры справа и допускает 19 значащих цифр. Наибольшее значение, которое может представлять, составляет 922 337 203 685 477,5807 (положительный или отрицательный). В отличие от десятичного числа, тип фиксированного десятичного числа всегда является точным и поэтому полезен в случаях, когда отсутствие нотации с плавающей запятой может привести к ошибкам.
Целое число Представляет 64-разрядное (восьмибайтовое) целочисленное значение. Так как это целое число, оно не имеет цифр справа от десятичного разряда. Он позволяет использовать 19 цифр; положительные или отрицательные целые числа между –9 223 372 036 854 775 807 (–2^63+1) и 9 223 372 036 854 775 806 (2^63–2). Она может представлять наибольшую возможную точность различных числовых типов данных. Как и в случае с типом фиксированного десятичного числа, тип целого числа может быть полезным в случаях, когда необходимо управлять округлением.
Процент В основном то же, что и тип десятичного числа, но он имеет маску для форматирования значений в столбце в процентах в окне редактора Power Query.
Дата и время Представляет одновременно дату и время. В нижней части обложки значение даты и времени хранится в виде типа десятичного числа, поэтому можно фактически преобразовать между двумя. Временная часть даты хранится в виде дроби от целых кратных 1/300 секунды (3,33 мс). Поддерживаются даты между 1900 и 9999 годами.
Дата Представляет только дату (без части времени). При преобразовании в модель дата совпадает со значением даты и времени с нулем для дробного значения.
Время Представляет только время (нет части даты). При преобразовании в модель значение времени совпадает со значением даты и времени без цифр слева от десятичного разряда.
Дата/время/часовой пояс Представляет дату и время в формате UTC со смещением часового пояса. Он преобразуется в дату и время при загрузке в модель.
Duration Представляет период времени, который преобразуется в тип десятичного числа при загрузке в модель. В качестве типа десятичного числа его можно добавить или вычесть из поля даты и времени с правильными результатами. Так как это тип десятичного числа, его можно легко использовать в визуализациях, которые показывают величину.
Бинарный Тип двоичных данных можно использовать для представления любых других данных с двоичным форматом.
Любой Любой тип данных — это состояние, заданное столбцу, который не имеет явного определения типа данных. Тип данных «Any» охватывает все значения. Рекомендуется всегда явно определять типы данных столбцов для запросов из неструктурированных источников. Кроме того, не используйте столбцы с типом данных Any в качестве выходных данных запроса.

Обнаружение типов данных

Обнаружение типов данных происходит автоматически при подключении к:

  • Структурированные источники данных, такие как базы данных, Power Query считывает схему таблицы из источника данных и автоматически отображает данные с помощью правильного типа данных для каждого столбца.

  • Неструктурированные источники, такие как Excel, CSV и текстовые файлы, Power Query автоматически обнаруживает типы данных, проверяя значения в таблице. По умолчанию функция автоматического обнаружения типов данных включена в Power Query для неструктурированных источников.

Вы также можете использовать команду "Определить тип данных " в группе "Любой столбец " на вкладке "Преобразование ", чтобы автоматически обнаруживать типы данных столбцов в таблице.

Снимок экрана: команда обнаружения типа данных на вкладке

Определение типа данных столбца

Вы можете определить или изменить тип данных столбца в любом из четырех мест:

  • На вкладке "Главная", в группе "Преобразование", в раскрывающемся меню "Тип данных".

    Снимок экрана: меню типа данных на вкладке

  • На вкладке "Преобразование " в группе "Любой столбец " в раскрывающемся меню "Тип данных ".

    Снимок экрана: меню типа данных на вкладке

  • Выбрав значок в левой части заголовка столбца.

    Снимок экрана: меню типа данных в заголовке столбца.

  • В контекстном меню столбца выберите "Изменить тип".

    Снимок экрана с командой изменения типа в контекстном меню столбца.

Автоматическое обнаружение типа данных столбца и заголовков

Этот параметр предназначен специально для неструктурированных источников. Это помогает автоматически проверять и обнаруживать типы столбцов и заголовки на основе первых 200 строк таблицы. Если этот параметр включен, Power Query автоматически добавляет два шага в запрос:

  • Повышение заголовков столбцов: преобразует первую строку таблицы в заголовок столбца.
  • Измененный тип: преобразует значения из любого типа данных в тип данных на основе проверки значений из каждого столбца.

По умолчанию эта настройка включена. Чтобы отключить или включить этот параметр, выполните действия, которые применяются к интерфейсу Power Query.

Настройка автоматического обнаружения типов данных в Power Query Online

На вкладке "Главная" выберите "Параметры", затем выберите "Загрузка данных" в разделе "Параметры проекта". Установите флажок "Автоматически определять типы столбцов и заголовки для неструктурированных источников ".

Снимок экрана: онлайн-параметр для автоматического обнаружения типов данных в параметрах проекта.

Настройка автоматического обнаружения типов данных в Power Query Desktop

Это поведение можно определить как на глобальном, так и на уровне файла в окне "Параметры" (в редакторе Power Query на вкладке "Файл" выберитепараметры>).

  • Global: на левой панели в разделе "Глобальный" выберите "Загрузка данных". На правой панели в разделе "Обнаружение типов" можно выбрать любую из трех конфигураций обнаружения типов, которые применяются к каждому новому файлу, созданному в приложении:

    • Всегда обнаруживать типы столбцов и заголовки для неструктурированных источников
    • Определение типов столбцов и заголовков для неструктурированных источников в соответствии с параметрами каждого файла
    • Никогда не обнаруживать типы столбцов и заголовки для неструктурированных источников

    Снимок экрана: параметры рабочего стола, чтобы задать обнаружение глобальных типов.

  • Текущий файл: на левой панели в разделе "Текущий файл" выберите "Загрузка данных". На правой панели в разделе "Обнаружение типов" выберите, нужно ли включить или отключить обнаружение типов для текущего файла.

    Снимок экрана: параметр автоматического обнаружения типа данных в Power Query Desktop.

Языковой стандарт документа или проекта

Power Query обрабатывает два отдельных компонента, которые управляют тем, как выглядят вещи и интерпретируются:

  • Локализация: компонент, указывающий Power Query на каком языке он должен отображаться.
  • Глобализация: компонент, обрабатывающий форматирование значений, помимо интерпретации текстовых значений.

Локаль — это одно значение, которое объединяет и локализацию, и глобализацию. Локаль используется для интерпретации текстовых значений и их преобразования в другие типы данных. Например, языковой стандарт (США) означает, что локализация находится на английском языке США, а глобализация или формат значения основаны на стандартах, используемых в Соединенных Штатах.

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

  • В Power Query Online эта интерпретация определяется в параметрах проекта в разделе "Региональные параметры".

    Снимок экрана параметра локали в Power Query Online.

  • В Power Query Desktop Power Query автоматически распознает региональный формат вашей операционной системы и использует его для интерпретации значений при преобразовании типов данных. Чтобы переопределить эту конфигурацию языкового стандарта, откройте окно параметров запроса и в левой панели, в разделе Текущий файл, выберите региональные параметры. Здесь можно изменить локаль на нужную настройку.

    Снимок экрана: настройка языкового стандарта в Power Query Desktop.

Настройка локали важна для интерпретации текстовых значений в определенный тип данных. Например, представьте, что у вас есть языковой стандарт, заданный как английский (США), но столбец в одном из CSV-файлов имеет даты, отформатированные в формате дня или месяца в год в Соединенном Королевстве.

Снимок экрана: пример исходной таблицы с датами в столбце

При попытке задать тип данных столбца Date в значение Date, вы получите значения ошибок.

Снимок экрана: ошибка преобразования типов данных.

Эти ошибки возникают из-за того, что текущий языковой стандарт пытается интерпретировать дату в формате английского (США) — месяц/день/год. Так как в календаре нет месяца 22, это приводит к ошибке.

Вместо того чтобы просто выбрать тип данных Дата, щелкните правой кнопкой мыши заголовок столбца, выберите Изменить тип и выберите Использовать с учетом региональных настроек.

Снимок экрана: параметр локали в контекстном меню столбца.

В диалоговом окне "Изменить столбец с языковым стандартом" выберите тип данных, который требуется задать, но вы также выбираете используемый языковой стандарт, который в данном случае должен быть английский (Соединенное Королевство).

Снимок экрана диалога изменения типа столбца с выбором региональных настроек.

При использовании этого языкового стандарта Power Query может правильно интерпретировать значения и преобразовывать эти значения в правильный тип данных.

Снимок экрана: окончательная таблица после использования языкового стандарта с датами в столбце даты, заданной в формате US.

Проверка конечных значений дат

Параметр глобализации определяет форматирование значений даты. Если у вас возникли сомнения в значении, отображаемом Power Query, можно проверить преобразование значений даты, добавив новые столбцы для дня, месяца и года из значения. Чтобы добавить эти новые столбцы, выберите столбец Date и перейдите на вкладку "Добавить столбец " на ленте. В группе столбцов даты и времени отображаются параметры столбца даты.

Снимок экрана: выбор частей значения столбца даты для размещения в новом столбце.

Здесь можно извлечь части значения даты, например число года, число месяца, номер дня или еще больше столбцов, извлеченных из столбца Date .

Снимок экрана: части даты, разделенные на столбцы года, месяца и дня.

С помощью этих столбцов можно убедиться, что значение даты преобразовано правильно.

Матрица преобразования типов данных

Следующая матрица предназначена для быстрого просмотра возможности преобразования типа данных из одного типа данных в другой.

Замечание

Преобразование в этой матрице начинается с исходного типа данных в столбце типов данных . Каждый результат преобразования в новый тип отображается в строке исходного типа данных.

Типы данных
Десятичное число
Валюта
Целое число
Процент
Дата и время
Дата
Время
Дата/время/часовой пояс
Длительность
Текст
Истина/Ложь
Icon Description
Возможный
Невозможно
Возможно, но он добавляет значения в исходное значение
Возможно, но это может усечь исходное значение.

Типы в Power Query M

Список часто используемых типов данных можно найти в статье о преобразованиях типов и типов Power Query M. Существует также полный список типов данных в статье " Типы языков формул Power Query M".