Функция Pandas.date_range() используется для возврата фиксированной частоты DatetimeIndex. Функция date_range() определена в библиотеке Pandas. Pandas — это один из пакетов Python, который значительно упрощает анализ данных для пользователей. Метод Pandas date_range() — это одна из общих функций в Pandas, которая используется в Python для возврата DatetimeIndex с фиксированной частотой и создания диапазона дат.
Синтаксис
|
1 2 |
pandas.date_range(start=None, end=None, periods=None, freq=None, tz=None, normalize=False, name=None, closed=None, **kwargs) |
Параметры
Функция Pandas.date_range() имеет 9 параметров.
- start: это левая граница для генерации дат.
- end: это правая граница для генерации дат.
- Periods: это количество периодов для генерации.
- Freq: Строки частоты или смещение данных. Строки частоты могут иметь несколько значений.
- tz: имя часового пояса для возврата локализованного DatetimeIndex.
- normalize: нормализовать даты начала/окончания до полуночи перед созданием диапазона дат.
- Name: это имя результирующего DatetimeIndex.
- Closed: делает интервал закрытым относительно данной частоты. Он может делать это «слева», «справа» или с обеих сторон. По умолчанию установлено значение none.
- **kwargs: Это просто для совместимости разных систем. На результат это не влияет.
Возвращаемое значение
Функция date_range() возвращает datetimeIndex.

Примеры программы на Pandas date_range()
Напишем программу, показывающую работу метода date_range() в Python.
Пример 1
|
1 2 3 4 |
import pandas as pd dt = pd.date_range(start='1/1/2020', end='1/08/2020') print(dt) |
Выход:
|
1 2 3 |
DatetimeIndex(['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-04', '2020-01-05', '2020-01-06', '2020-01-07', '2020-01-08'], dtype='datetime64[ns]', freq='D') |
В приведенном выше примере мы видим, что мы создали диапазон дат, который начался с 01-01-2020 и закончился 01-08-2020. С помощью функции date_range() мы вернули все даты, приходящиеся на этот период. Чтобы проверить, находится ли он в формате даты и времени или нет, мы можем проверить значение dtype, которое также возвращается с датами.
Пример 2
Напишем программу для отображения date_range() без записи конечной даты и с помощью точек.
См. следующий код.
|
1 2 3 4 |
import pandas as pd dt = pd.date_range(start='1/1/2020', periods=10) print(dt) |
Выход:
|
1 2 3 4 |
DatetimeIndex(['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-04', '2020-01-05', '2020-01-06', '2020-01-07', '2020-01-08', '2020-01-09', '2020-01-10'], dtype='datetime64[ns]', freq='D') |
Здесь мы видим, что мы использовали функцию date_range() и указали дату начала, затем упомянули количество периодов, для которых мы хотим найти даты, и сохранили их в переменной, и, наконец, распечатали вывод.
Блокнот Python Jupyter
Запустим программу в Jupyter Notebook.

В этом примере мы определили дни начала и окончания с ежедневной периодичностью по умолчанию.
|
1 2 |
import pandas as pd pd.date_range(start='22/03/2020', end='27/04/2020') |
Теперь давайте посмотрим на другой сценарий.
Укажите начало и конец с несколькими периодами (днями).
|
1 2 |
import pandas as pd pd.date_range(start='22/03/2020', end='27/04/2020', periods=8) |

Теперь давайте укажем начало и периоды.
|
1 2 3 |
import pandas as pd pd.date_range(start='22/03/2020', periods=8) |

Укажем конец и периоды.
|
1 2 |
import pandas as pd pd.date_range(end='27/04/2020', periods=8) |

Давайте изменим freq(частоту) на «M»(частоту конца месяца).
|
1 2 3 |
import pandas as pd pd.date_range(start='1/1/2020', periods=6, freq='M') |

Множественные также разрешены в частоте.
|
1 2 3 |
import pandas as pd pd.date_range(start='1/1/2020', periods=6, freq='3M') |
В этом примере мы поставили freq = 3M, что означает, что он будет давать значения с интервалом 3M.

Частота также может быть определена как объект Offset.
|
1 2 3 |
import pandas as pd pd.date_range(start='1/1/2020', periods=6, freq=pd.offsets.MonthEnd(3)) |
В этом коде мы используем функцию pd.offsets.MonthEnd() в качестве значения параметра freq.

Давайте укажем tz для установки часового пояса.
|
1 2 3 |
import pandas as pd pd.date_range(start='1/1/2020', periods=6, tz='Asia/Seoul') |
Мы определили часовой пояс Сеул(Южная Корея).

Вот и все для этого примера Pandas date_range().
