# Процессор Dates (Даты)

Выполняет операции, связанные с датой.

Процессор Dates (Даты) позволяет применять различные функции к полям, связанным с датами, временем и метками времени. Доступные функции могут использоваться для расчета, очистки, изменения или преобразования дат.

## Использование

Процессор Dates (Даты) принимает один входной поток и может генерировать только один выходной поток.

## Свойства

Свойства для настройки работы с датами.

Примечание к информацииСвойства, перечисленные в этом разделе, являются свойствами по умолчанию для большинства функций данного процессора. Может потребоваться определить дополнительные свойства в зависимости от выбранной функции.

Конфигурация

| Свойство | Конфигурация |
| --- | --- |
| Имя функции | <ul> <li> <p><span>Преобразовать в метку времени</span>: интерпретирует строку как метку времени, используя формат, который можно выбрать из списка или указать вручную. Если выбран входной формат <span>Авто</span>, функция попытается определить формат из набора наиболее часто используемых. Если строку не удастся интерпретировать как метку времени, будет задано значение <span>Null</span>.</p> </li> <li> <p><span>Преобразовать в дату</span>: интерпретирует строку как дату, используя формат, который можно выбрать из списка или указать вручную. Если выбран входной формат <span>Авто</span>, функция попытается определить формат из набора наиболее часто используемых. Если строку не удастся интерпретировать как дату, будет задано значение <span>Null</span>.</p> </li> <li> <p><span>Преобразовать во время</span>: интерпретирует строку как время, используя формат, который можно выбрать из списка или указать вручную. Если выбран входной формат <span>Авто</span>, функция попытается определить формат из набора наиболее часто используемых. Если строку не удастся интерпретировать как время, будет задано значение <span>Null</span>.</p> </li> <li> <p><span>Создать метку времени из частей</span>: создает новое поле метки времени, объединяя числовые части из других полей или значения константы.</p> </li> <li> <p><span>Создать дату из частей</span>: создает новое поле даты, объединив числовые части из других полей или значения константы.</p> </li> <li> <p><span>Создать время из частей</span>: создает новое поле времени, объединяя числовые части из других полей или значения константы.</p> </li> <li> <p><span>Форматировать дату</span>: изменяет формат даты, используемый в поле даты.</p> </li> <li> <p><span>Вычислить разницу дат</span>: для заданной единицы времени вычисляет время между датой в поле и выбранной датой. Для вычисления сначала выполняется усечение дат до указанной части даты или времени, а затем возвращается разница между ними в виде целого числа.</p> </li> <li> <p><span>Добавить длительность</span>: добавляет определенное количество времени к дате.</p> </li> <li> <p><span>Сравнить даты</span>: сравнивает это поле с другим полем или константой</p> </li> <li> <p><span>Извлечь части даты</span>: создает поля с годом, месяцем, кварталом, днем, часом, минутой, секундой и т.&nbsp;д.</p> </li> <li> <p><span>Усечь дату</span>: удаляет часть даты.</p> </li> </ul> |
| Поля для обработки | Выберите одно или несколько полей, к которым требуется применить функцию в списке. |
| Создать новое поле | Включите этот параметр, чтобы создать новое поле после применения функции. Если этот параметр не включен, существующее поле будет сохранено и изменено. |
| Rename new field (Переименовать новое поле) | Присвойте пользовательское имя вновь созданному полю. |

Чтобы переименовать процессор или отредактировать его описание, откройте панель Свойства, наведите указатель мыши на имя или описание, которое нужно изменить, и нажмите значок the Изменить icon .

## Дополнительная информация о том, как работать с датами

Существует три различных формата, связанных с датами, которые принято называть датами.

* Время, которое обозначает время суток

* Дата, которая обозначает определенный день

* Метка времени, созданная из даты и времени

Даты в большинстве случаев определяются автоматически в потоке данных. Однако чтобы правильно ввести даты в систему, необходимо использовать одну из функций Преобразовать в в следующих случаях.

* Даты отформатированы таким образом, что не могут быть определены автоматически.

* Их требуется преобразовать в тот же формат даты, который используется в потоке данных, основываясь на локализации пользователя, создавшего поток данных.

* Требуется убедиться, что они установлены в определенном формате. В противном случае форматы дат, которые не распознаются, преобразуются в Null.

## Ограничения

* В некоторых случаях форматирование дат не работает из-за ограничений подсистемы. Это относится к функции Формат и функции Преобразовать в. Это произойдет только при обновлении исходного входного поля, но не при создании нового поля.

* Из-за ограничения подсистемы, когда дата загружается из формата, который изначально поддерживает даты, например Excel, не всегда можно установить формат этой даты.

## Предопределенные форматы даты

В этой таблице перечислены различные форматы, которые предопределены в функции «Поток данных», но при ручном вводе поддерживаются и другие форматы. Для получения дополнительной информации о том, как должны выглядеть форматы, заданные вручную, см. раздел [Описания форматов чисел и времени](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Introduction/conventions-number-time-formats.htm#anchor-3).

| Формат | Тип | Пример |
| --- | --- | --- |
| ГГГГ-ММ-ДД | Дата | 1999-03-22 |
| ГГГГММДД | Дата | 19990322 |
| М/Д/ГГГГ | Дата | 3/22/1999 |
| М/Д/ГГ | Дата | 3/22/99 |
| ММ/ДД/ГГ | Дата | 03/22/99 |
| МММ Д, ГГГГ | Дата | 22 марта 1999 г. |
| ММММ Д, ГГГГ | Дата | 22 марта 1999 г. |
| ГГГГ-ММ-ДД чч:мм | Метка времени | 1999-03-22 05:06 |
| ГГГГ-ММ-ДД чч:мм:сс | Метка времени | 22.03.1999 05:06:07 |
| ГГГГ-ММ-ДДТчч:мм | Метка времени | 22.03.1999 05:06 |
| ГГГГ-ММ-ДДТчч:мм:сс | Метка времени | 22.03.1999 05:06:07 |
| М/Д/ГГГГ чч:мм тт | Метка времени | 3/22/1999 05:06 AM |
| М/Д/ГГ чч:мм тт | Метка времени | 22.03.1999 05:06 |
| ММ/ДД/ГГ чч:мм тт | Метка времени | 22.03.1999 05:06 |
| М/Д/ГГГГ чч:мм:сс тт | Метка времени | 22.03.1999 05:06:07 |
| М/Д/ГГ чч:мм:сс тт | Метка времени | 22.03.1999 05:06:07 |
| ММ/ДД/ГГГГ ЧЧ:мм:сс тт | Метка времени | 22.03.99 05:06:07 |
| МММ Д, ГГГГ ч:мм:сс тт | Метка времени | 22 марта 1999 05:06:07 |
| ДНЕД, ММММ Д, ГГГГ ч:мм:сс тт | Метка времени | Понедельник, 22 марта 1999 05:06:07 |
| чч:мм | Время | 05:06 |
| чч:мм:сс | Время | 05:06:07 |
| чч:мм тт | Время | 05:06 AM |
| чч:мм:сс тт | Время | 05:06:07 AM |

## Пример: преобразование дат и работа с датами

В этом сценарии показано, как подготовить набор данных с информацией о потенциальных клиентах для обучения эксперимента машинного обучения с целью определения определить, какие из них могут стать действительными клиентами. Среди имеющейся информации у нас есть несколько полей, содержащих даты, например, FirstContactDate и TrialDate.

![Набор данных с информацией о потенциальных клиентах, включая даты](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Resources/Images/Dataflow/dates_convert_example_1.png)

Сначала необходимо убедиться, что два поля даты используют общий формат. Используйте первый процессор Dates (Даты) с функцией Преобразовать в дату для полей FirstContactDate и TrialDate. Теперь эти два поля используют один и тот же формат Д/ММ/ГГГГ.

Для второго процессора Dates (Даты) используйте функцию Вычислить разницу дат, чтобы отобразить количество дней между первым контактом и началом ознакомления.

После этого процессор Fork (Вилка) используется для создания первого вывода из полученных данных, а для получения второй порции выходных данных будет использоваться третий процессор Dates (Даты). С помощью функции «Извлечь части даты» можно оставить только информацию о годе и месяце в поле FirstContactDate, что облегчит ее чтение и обработку в будущем эксперименте машинного обучения.

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

![Поток данных, в котором даты правильно отформатированы](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Resources/Images/Dataflow/dates_convert_example_2.png)

## Пример: вычисление разницы между датами

Данные, используемые в качестве источника в этом примере, содержат ссылку на заказы, включая дату заказа и дату отгрузки.

![Набор данных, содержащий заказы и даты отгрузки](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Resources/Images/Dataflow/dates_example_1.png)

Чтобы получить некоторое представление о задержке, необходимой для отправки заказов, можно использовать процессор Dates (Даты) для расчета время между размещением заказа и его отправкой.

В свойствах процессора выберите Вычислить разницу дат в качестве функции и День в качестве единицы времени. Выберите Order Date (Дата заказа) в качестве поля для обработки и Ship Date (Дата отгрузки) в качестве второго поля для расчета разницы во времени. Введите имя для нового поля, которое требуется создать, задайте цель и запустите поток данных.

![Процессор Dates (Даты) для вычисления разницы во времени](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Resources/Images/Dataflow/dates_example_2.png)

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

## Видеообзор

[Посмотреть видеоролик](https://play.vidyard.com/K6R24fJuZAvLCrnNPmRrkW)