Типы данных в Power Query
Типы данных в Power Query используются для классификации значений для более структурированного набора данных. Типы данных определяются на уровне поля. Значения внутри поля задаются для соответствия типу данных поля.
Тип данных столбца отображается слева от заголовка столбца значком, символизирующим тип данных.
Примечание.
Power Query предоставляет набор контекстных преобразований и параметров на основе типа данных столбца. Например, при выборе столбца с типом данных Date вы получаете преобразования и параметры, которые применяются к конкретному типу данных. Эти преобразования и параметры происходят в интерфейсе Power Query, например на вкладках преобразования и добавления столбцов и параметров интеллектуального фильтра.
Наиболее распространенные типы данных, используемые в Power Query, перечислены в следующей таблице. Несмотря на область этой статьи, полный список типов данных можно найти в статье "Типы языков формул Power Query M".
Тип данных | Icon | Описание |
---|---|---|
Текст | Строка символьных данных в Юникоде. Может быть строками, числами или датами, представленными в текстовом формате. Максимальная длина строки составляет 268 435 456 символов Юникода (где каждый символ Юникода составляет два байта) или 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). Она может представлять наибольшую возможную точность различных числовых типов данных. Как и в случае с типом фиксированного десятичного числа, тип Кто le Number может быть полезным в случаях, когда необходимо контролировать округление. | |
Процент | В основном то же, что и тип десятичного числа, но он имеет маску для форматирования значений в столбце в процентах в окне Редактор Power Query. | |
Date/Time | Представляет значение даты и времени. В нижней части обложки значение даты и времени хранится в виде типа десятичного числа, поэтому можно фактически преобразовать между двумя. Часть времени даты хранится в виде дроби ко всем кратным 1/300 секундам (3,33 мс). Поддерживаются даты между 1900 и 9999 годами. | |
Дата | Представляет только дату (без части времени). При преобразовании в модель дата совпадает со значением даты и времени с нулем для дробного значения. | |
Time | Представляет только время (нет части даты). При преобразовании в модель значение времени совпадает со значением даты и времени без цифр слева от десятичного разряда. | |
Дата/время/часовой пояс | Представляет дату и время в формате UTC со смещением часового пояса. Он преобразуется в дату и время при загрузке в модель. | |
Длительность | Представляет период времени, который преобразуется в тип десятичного числа при загрузке в модель. В качестве типа десятичного числа его можно добавить или вычесть из поля даты и времени с правильными результатами. Так как это тип десятичного числа, его можно легко использовать в визуализациях, которые показывают величину. | |
Binary | Тип двоичных данных можно использовать для представления любых других данных с двоичным форматом. | |
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 обрабатывает два отдельных компонента, которые управляют тем, как выглядят вещи и интерпретируются:
- Локализация: компонент, указывающий Power Query на каком языке он должен отображаться.
- Глобализация: компонент, обрабатывающий форматирование значений, помимо интерпретации текстовых значений.
Языковой стандарт — это одно значение, которое содержит как компоненты локализации, так и глобализации. Языковой стандарт используется для интерпретации текстовых значений и их преобразования в другие типы данных. Например, языковой стандарт (США) означает, что локализация находится в США английском языке, а глобализация или формат значения основаны на стандартах, используемых в США.
Если Power Query определяет тип данных столбца или преобразуется из одного типа данных в другой, он должен интерпретировать значения, которые необходимо преобразовать, прежде чем он сможет преобразовать их в другой тип данных.
В Power Query Online эта интерпретация определена в параметрах проекта в разделе "Языковой стандарт".
В Power Query for Desktop Power Query автоматически распознает региональный формат операционной системы и использует его для интерпретации значений преобразования типов данных. Чтобы переопределить эту конфигурацию языкового стандарта, откройте окно параметров запроса и в левой области в текущем файле выберите региональные параметры. Здесь можно изменить языковой стандарт на нужный параметр.
Этот параметр языкового стандарта важен для интерпретации текстовых значений в определенный тип данных. Например, представьте, что у вас есть языковой стандарт на английском языке (США),но столбец в одном из CSV-файлов имеет даты, отформатированные в формате дня или месяца в год в Соединенном Королевстве.
При попытке задать тип данных столбца Date в значение Date, вы получите значения ошибок.
Эти ошибки возникают из-за того, что используемый языковой стандарт пытается интерпретировать дату в формате английского языка (США), который имеет значение month/day/year. Так как в календаре нет месяца 22, это приводит к ошибке.
Вместо того чтобы просто выбрать тип данных Date, щелкните правой кнопкой мыши заголовок столбца, выберите "Изменить тип" и выберите "Использовать языковой стандарт".
В диалоговом окне "Изменить столбец с языковым стандартом" выберите тип данных, который требуется задать, но вы также выбираете используемый языковой стандарт, который в данном случае должен быть английский (Соединенное Королевство).
С помощью этого языкового стандарта Power Query сможет правильно интерпретировать значения и преобразовывать эти значения в правильный тип данных.
Проверка конечных значений дат
Форматирование значений определяется значением глобализации. Если у вас возникли сомнения в значении, отображаемом Power Query, можно проверить преобразование значений даты, добавив новые столбцы для дня, месяца и года из значения. Для этого выберите столбец Date и перейдите на вкладку "Добавить столбец " на ленте. В группе столбцов даты и времени вы увидите параметры столбца даты.
Здесь можно извлечь части значения даты, например число года, число месяца, номер дня или еще больше столбцов, извлеченных из столбца Date .
С помощью этих столбцов можно проверить правильность преобразования значения даты.
Матрица преобразования типов данных
Следующая матрица предназначена для быстрого просмотра возможности преобразования типа данных из одного типа данных в другой.
Примечание.
Преобразование в этой матрице начинается с исходного типа данных в столбце типов данных. Каждый результат преобразования в новый тип отображается в строке исходного типа данных.
Типы данных | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Десятичное число | — | ||||||||||
Валюты | — | ||||||||||
число Кто | — | ||||||||||
Процент | — | ||||||||||
Дата и время | — | ||||||||||
Дата | — | ||||||||||
Время | — | ||||||||||
Дата/время/часовой пояс | — | ||||||||||
Duration | — | ||||||||||
Text | — | ||||||||||
True/False | — |
Icon | Description |
---|---|
Возможные способы | |
Невозможно | |
Возможно, но он добавляет значения в исходное значение | |
Возможно, но оно усечено исходное значение |