Аналитика дождей

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

Сегодня (19 сентября 2019) зашел на Яндекс погоду и удивился с какой простотой можно собрать данные, а так же создать для себя график хаотичности погоды.

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

Заходим на Яндекс.Погода

https://yandex.ru/pogoda?via=hl

Аналитика дождей, image #1

Я выбираю Углянец и захожу в раздел «Прогноз на месяц» в самом верхнем меню справа на экране. Получаем вот такую страницу

Аналитика дождей, image #2

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

Аналитика дождей, image #3

Выберите раздел «Вероятность осадков». Он сильно отличается от раздела «Температура». Чем? Тем, что графа там фиксированна от 0 до 100%. В то время как температура имеет намного больше значений и с ней сложнее работать.

Аналитика дождей, image #4

Обратите внимание — период сбора данных 10 лет, экстремумы 0 и 100. А шаг данных — 10! Понятно, что никто не будет с вами делиться собственными исследованиями данных за последние десять лет, тем более метеостанций по всей огромной стране. Но вот такой случай, это момент когда кто-то допустил ошибку и указание какого точных данных позволяет собрать информацию.

Например, 19 сентября 100% вероятность дождя и дождь был неоднократно за день. Это не супер прогноз, так как сказать будет ли дождь в пределах суток мы уже все давно научились (во всяком случае наши ученые). Но вот с 29 сентября (через 10 суток) начинается реальная выдача сводки.

Например, 30 сентября 4 раза из 10 шел дождь.
А 18 октября 6 раз из 10 шел дождь в этот день. Но удивительно другое, не эти шансы, а то что за последние десять лет 3 октября не было ни разу дождя!

Хотите запланировать прогулку? Теперь вы знаете когда в Углянце дождя точно не будет и можно планировать на месяц вперед. А если данные раз в месяц заносить в гугл таблицу, то спустя год можно иметь таблицу в 365 строк и составить график потенциальных дождей и планировать на год вперед!

Планировать дожди на год вперед?
И это реальность!

Только важное уточнение:
Если вы решили сегодня (19 сентября) делать замер, то вы можете занести только данные с 29 сентября по 18 октября. А следующий замер надо делать 7 или 8 октября (за десять суток до следующих данных).

Больше гугл таблиц богу гугл таблиц!

В данном случае график справа просто необходимость, что ВК не сожрал качество скриншота
В данном случае график справа просто необходимость, что ВК не сожрал качество скриншота

Конечно, со временем даты надо будет упорядочить в графике от 1 января до 31 декабря. Но пока что работаем с тем, что у нас есть. Напомню, что это для конкретного места с радиусом в 5 км можно учитывать. Например, для Санкт-Петербурга или Москвы такой метод не подходит, нужно уточняющие данные (например, по геометке у Яндекса есть поиск)

Выделяем оба столбца и жмем создание графика

Аналитика дождей, image #6

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

Кстати, хороший научный проект для ребенка в школу (длиной в год)

Аналитика дождей, image #7

Я хотел бы привести график в порядок, не очень нравится как он выглядит.
Изменим название. А в разделе горизонтальная ось ставим «Читать ярлыки как текст». Данные теперь более явные, но как видим масштаб маловат.

Аналитика дождей, image #8

После увеличения размера графика

Аналитика дождей, image #9

Заметили наверное уже, что верхушка графика упирается в 60, а не 100.
Надо исправить! Идем в «Вертикальная ось» и в разделе «Макс.» пишем 100.
«Мин.» укажите 0

Аналитика дождей, image #10

Идем в раздел «Сетка», при активном параметре «левая вертикальная ось», в поле «Количество линий крупной сетки» укажите 6, а в поле «Количество линий мелкой сетки» укажите 1

Аналитика дождей, image #11

Стало немного удобнее смотреть шанс дождя.

Ну а теперь линия тренда, я вызываю тебя!

Заходим в раздел «Серия», дальше ставим галочку «Линия тренда» и видим линейное предсказание — по его мнению нас скоро всех затопит дождем:

Аналитика дождей, image #12

Для удобства меняю цвет линии тренда на красный.
И перещелкиваю тип тренда с «Линейный» на «Полиномиальный».
Погода взбесилась! Зачем мы вообще начали трогать то, что работало? Нас затопит дождям совсем скоро!

График по 2
График по 2

Дальше начинается простой перебор номера порядка многочлена:

3 — через месяц ждет засуха
3 — через месяц ждет засуха
4 — адский ливень все ближе
4 — адский ливень все ближе
6 — уравнение очень точно описывает ситуацию, но его уводит в крайность через месяц еще сильнее чем при 4
6 — уравнение очень точно описывает ситуацию, но его уводит в крайность через месяц еще сильнее чем при 4
8 — график еще точнее описывает ситуацию за 10 лет, но его лихорадит из 100 в 0
8 — график еще точнее описывает ситуацию за 10 лет, но его лихорадит из 100 в 0
10 — дает слишком точный прогноз и не может предсказать будущее
10 — дает слишком точный прогноз и не может предсказать будущее

Почему так происходит?
Просто потому что мы не можем предсказать точно линией тренда на основании таких малых количеств данных. Лучше всего подойдет график по 2.

Как вообще работает линия тренда?
Если совсем по простому, то вот вы даете программе десять чисел.
А программа создает уравнение по которой пытается попасть в те числа, которые вы указали. При этом это не просто отрезок прямой, а луч (имеет начало, не имеет конца) и поэтому мы видим, что чем сложнее уровнение (например 2 порядок хуже описывает наш исходный график чем порядок 10), тем точнее его описательная возможность. То есть чем ближе мы к 10, тем лучше созданное уравнение, которое описывает хаос окружающего мира.

НО! При малом количестве данных высокая точность приводит к неспособность прогнозировать дальше пары чисел. На начальном этапе выход только понижать точность и заносить новые данные, чтобы в дальнейшем точность можно было бы повысить.

Точность — 2 из 10
Точность — 2 из 10

В принципе, график говорит, что октябрь будет дождлив.
Хорошо, я в это верю.

К чему вообще может привести подобная ситуация с графиками?
Например, мы отслеживаем как работает сервер сайта Море Статы и регулярно (раз в минуту) шлем сообщение ему — спрашиваем, эй ты живой? Если сервер упал, умер, уничтожился, то мне лично в ВК приходит сообщение об ошибке в ту же минуту.

Вот что получилось у нас на графике с 20 октября 2018 года:

Аналитика дождей, image #20

Эти отключения хаотичны, независящие от нас. Почти все они — это выключение на пару секунд, так что даже пользователи не замечают их.
Но в июле у нас было предсказание по сильному рывку и так совпало, что в эти дни мы преодолели на новом сервере базовую нагрузку и сервер падал 70 раз за сутки. Семьдесят отключений по пару секунд, Карл! И график нас об этом предупреждал за месяц вперед, показывая нереальный рывок вверх на точности 6.

Сейчас, спустя 300+ строк, график показывает что будет незначительный проблемный день в срок 15-19 октября. Мы уже за месяц предупреждены и готовы к такому повороту событий.

Можно ли предсказать дождливые и сухие дни?
По данным только от Яндекса нельзя. Но при построении графика у вас будет линия тренда, которая с каждым новым днем будет уточнятся, используя данные Яндекс за последние 10 лет и вы получите максимальную уверенность в планах через полгода — год! Будущее уже наступает :)

395 views·3 shares