<jupyter_start><jupyter_text>Возьмем из датасета ряд с минимальными температурами.<jupyter_code>dataset = load_dataset.Dataset('../data/dataset/')
ts = dataset['daily-min-temperatures.csv']
ts.head()
ts.tail()
plot_ts(ts)<jupyter_output><empty_output><jupyter_text>Поэтапное построение самого базового пайплайна для прогнозирования  Задание 1. Напишите функцию transform_to_matrix, которая бы принимала одномерный ряд и возвращала матрицу лагов1. Функция должна принимать временной ряд (pd.Series) и количество лагов (оно же количество признаков). 2. Функция должна проходить по ряду скользящим окном с шириной num_lags и брать лаги текущего окна в качестве признаков, а следующую точку в качестве ответа на данном обьекте.3. Каждое перемещение окна на одну точку вперед сооветствует новому обьекту матрицы.4. Функция должная вернуть pd.Dataframe - т.е. матрицу объекты признаки.<jupyter_code>def transform_to_matrix(ts, num_lags):
    <your code here>
    return<jupyter_output><empty_output><jupyter_text>Задание 2.<jupyter_code>from statsmodels.graphics.tsaplots import plot_acf<jupyter_output><empty_output><jupyter_text>Получите матрицу обьекты-признаки, выбрав в качестве ориентировочного значения num_lags период сезонности ряда.  Задание 3. Добавьте в модель следующие дополнительные признаки* Для всех лагов кроме целевого на каждой строчке матрицы расчитайте среднее и стандартное отклонение (не включайте текущий лаг на данном объекте, чтобы избежать лика информации из будущего).  Для всех обьектов добавьте в качестве признаков следующие datetime признаки (см аналогию в modern_approach.ipynb)1. sin/cos года текущего объекта2. sin/cos месяца текущего объекта3. sin/cos дня текущего объектаПодсказка (получить соответствующие значения можно из аттрибутов обьекта datetime)<jupyter_code><your code here><jupyter_output><empty_output><jupyter_text>Задание 4. Разделите на train/test в соотношении примерно 0.7 на 0.3.Обратите внимание что тест всегда должен быть после трейна, чтобы избежать ликов из будущего, поэтому никакого stratified split<jupyter_code><your code here><jupyter_output><empty_output><jupyter_text>Задание 5.  Обучите модель линейной регрессии из sklearn (LinearRegression, Ridge, Lasso)`<jupyter_code><your code here><jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.06406318560772269, 'fraction_numerical': 0.007020623080298377, 'mean_word_length': 6.944250871080139, 'pattern_counts': {'":': 0, '<': 29, '<?xml version=': 0, '>': 29, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '6', 'dir': 'jupyter-structured-clean-dedup', 'id': '290666', 'license': 'MIT', 'n_tokens_mistral': 899, 'n_tokens_neox': 1058, 'n_words': 226, 'path': 'week_2/supervised.ipynb', 'repo_name': 'AndrewVolosnikov/ts_autumn', 'size': '2279'}