Как сделать прогноз погоды в excel
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Как сделать прогноз в Microsoft Excel на 4 месяца вперед, если известны данные за предыдущий год?
— прогноз погоды
— прогноз зарплаты
— прогноз поломки автомобиля
— прогноз сбыта товаров
— прогноз расхода электроэнергии
.
надо учитывать много факторов и во всех случаях они разные. На торговлю влияет погода и день недели, расход электроэнергии в доме уменьшается в ночное время и летом. Пиковое значение уличной энергии приходится на ночь.
Простейший способ — построить график из прошлогодних данных и «мысленно» продолжить
Остальные ответы
Прогноз погоды
Добрый день. Подскажите возможно ли вывести отдельно в ячейки погодные условия (давление, температура, скорость и направление ветра)?
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Прогноз погоды на Excel
здравствуйте! столкнулся с задачей. честно, никогда не работал и Excel. ну в серьезных делах.
Рассчитать прогноз
В таблице 11 представлены данные о количестве проданных чизбургеров (y), их цены (x1) и затрат на.
Регрессия и прогноз по жд транспорту
Доброго времени суток! есть данные по железнодорожному транспорту, не получается провести.
Прогноз валюты на месяц
Здравствуйте! Подскажите, пожалуйста, как провести прогноз валюты(доллар) на месяц вперед, и по.
3560 / 1928 / 409
Регистрация: 13.12.2016
Сообщений: 6,630
Записей в блоге: 5
Ssainss, да возможно. Я делал кому-то на форуме температуру воды в море на дату. Поищите
303 / 211 / 96
Регистрация: 21.09.2016
Сообщений: 795
АЕ, может у ТС фотка с температурой, давлением и ветром
3560 / 1928 / 409
Регистрация: 13.12.2016
Сообщений: 6,630
Записей в блоге: 5
Garic73, да нет. ТС конкретно просит в ячейку значение
Я делал такие функции.
типа этой
1 2 3 4 5 6 7 8 9 10 11 12 13
Public Function GetWeatherTemp(Optional ByVal t As String = "novorossysk") As String Dim sURL As String sURL = "https://world-weather.ru/pogoda/russia/" & t & "/" Dim oXMLHTTP On Error Resume Next Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP") With oXMLHTTP .Open "GET", sURL, False .send GetWeatherTemp = Split(Split(.responseText, """weather-now-number"">")(1), "")(0) End With Set oXMLHTTP = Nothing End Function
Регистрация: 24.05.2017
Сообщений: 36
Извините, я плохо знаком с excel. Он выдаёт пустое окно при выполнение макроса.
3560 / 1928 / 409
Регистрация: 13.12.2016
Сообщений: 6,630
Записей в блоге: 5
Сообщение от Ssainss
я плохо знаком с excel
Оно и видно. Это не макрос а функция. Вызывается из ячейки.
1573 / 1024 / 273
Регистрация: 05.10.2014
Сообщений: 4,993
Сообщение от АЕ
Я делал такие функции.
типа этой
Прикольно!
А как сделать, чтобы город брался из соседней ячейки, слева например?
Добавлено через 7 минут
Сообщение от Ssainss
Извините, я плохо знаком с excel. Он выдаёт пустое окно при выполнение макроса.
Я тоже, но ведь разобраться это дело 5-10 минут и вещь полезная, пригодится)
Напишите =GetWeatherTemp()
3560 / 1928 / 409
Регистрация: 13.12.2016
Сообщений: 6,630
Записей в блоге: 5
Сообщение от mihailm
А как сделать, чтобы город брался из соседней ячейки
посмотрите -что это значит Optional ByVal t As String = «novorossysk»
1573 / 1024 / 273
Регистрация: 05.10.2014
Сообщений: 4,993
Сообщение от АЕ
посмотрите -что это значит Optional ByVal t As String = «novorossysk»
Не сразу, но понял, что надо просто стереть = «novorossysk»))
3560 / 1928 / 409
Регистрация: 13.12.2016
Сообщений: 6,630
Записей в блоге: 5
Сообщение от mihailm
что надо просто стереть = «novorossysk»
не правильно поняли. Это значение по умолчанию, если иного не указано.
1573 / 1024 / 273
Регистрация: 05.10.2014
Сообщений: 4,993
Сообщение от АЕ
не правильно поняли. Это значение по умолчанию, если иного не указано
Действительно, ну я ж в VBA не разбираюсь, так потренировался на всякий случай — вдруг придется использовать, а времени разбираться совсем не будет))
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Прогноз по двум параметрам
Добрый день коллеги! Простейшая задача, но поставила в тупик. Итак есть два ряда Ряд 1.
Прогноз даты выхода в ремонт
Уважаемы форумчане! Вопрос заключается в следующем. Необходимо спрогнозировать дату выхода в.
Прогноз прибыли с учетом внешних факторов
Коллеги, всем хорошего дня. Требуется по исходным данным построить прогноз прибыли на указанные.
Сделать прогноз с помощью функции Тенденция
Помогите, пожалуйста, сделать прогноз в листе "Население" с помощью функции тенденция.
Прогноз временного ряда с применением модели ARMA
Имеется временной рад. Задача посторить прогноз с помощью авторегрессии и скользящего среднего.
Составить прогноз или предсказание по программе EXCEL
Дорогие форумчане, помогите спрогнозировать дальнейшие значения и по столбцу A и по столбцу B. И.
Или воспользуйтесь поиском по форуму:
Пишем свой прогноз погоды на Python
У Практикума появился новый бесплатный мини-курс — «Прогноз погоды на Python за час». Мы посмотрели, как он работает, и решили повторить это у себя в статье — как обычно, с комментариями и разбором. При этом на курсе всё удобнее — там в тренажёре можно сразу увидеть результат и получить совет, как исправить ошибки, если они появятся.
Можете сейчас пролистать статью, а потом пойти потренироваться в Практикуме. У них написано, что это приключение на час, но описанная в этой статье часть займёт минут пятнадцать. Вводить данные карты не нужно. Выглядит так:
Что делаем
Пишем скрипт, который покажет погоду в выбранном городе. Для этого мы:
- Подключаемся к службе погоды OpenWeather.
- Выбираем город.
- Получаем текущую температуру воздуха в этом городе и то, как она ощущается.
- Выводим результаты на экран.
На деле это проще, чем кажется, — за нас всю работу сделает API службы погоды, а мы только получим и обработаем результаты.
Для работы нам понадобится Python. Если будете делать проект без тренажёра Практикума, вам потребуется среда разработки. Прочитайте, как установить Python на компьютер и начать на нём писать.
Если будете делать в тренажёре Практикума, там среда уже настроена, можно просто делать без установки.
Подключаемся к службе погоды
Чтобы скрипт мог отправлять запросы к другим серверам, нам понадобится библиотека requests . Если вы делаете всё в тренажёре Практикума, эта библиотека уже установлена. А для установки её на свой компьютер нужно открыть терминал и выполнить такую команду:
pip install requests
После установки мы сразу можем подключить библиотеку к своему скрипту. Это уже пишем в коде, а не в терминале:
С этого момента наша программа будет знать, как отправлять запросы на сервер и получать в ответ новые данные. Теперь сделаем переменную с городом, погоду в котором нам интересно узнать:
Город в переменной может стоять любой — Москва, Брянск, Тула, Воронеж или что угодно ещё. Главное, чтобы о нём знала служба погоды OpenWeather.
Перед тем как отправить запрос, нам нужно его сформировать: подготовить специальную строку, которую сервер сможет обработать, чтобы вернуть нам данные о погоде. Она будет состоять из трёх частей:
- Адреса сервера, к которому мы отправляем запрос → https://api.openweathermap.org/data/2.5/weather
- Города, температуру в котором нам интересно узнать → он лежит в переменной city
- Служебных параметров: единиц измерения и ключа приложения → &units=metric&lang=ru&appid=79d1ca96933b0328e1c7e3e7a26cb347
Собираем всё вместе и кладём результат в переменную url:
url = 'https://api.openweathermap.org/data/2.5/weather?q='+city+'&units=metric&lang=ru&appid=79d1ca96933b0328e1c7e3e7a26cb347'
Теперь подробнее про службу погоды.
Служба погоды OpenWeather
OpenWeather — это погодный сервис, который собирает данные о погоде в городах со всего мира. У него есть сайт, на который можно зайти, вбить свой город и узнать погоду на сегодня (на английском):
Но особенность этого сервиса в том, что он ещё умеет отвечать на внешние запросы — такие же, как мы сформировали в скрипте.
Если мы заменим переменную в адресе на конкретный город, а затем вставим эту строку в браузер и перейдём по этому адресу, то получим полную информацию о погоде и расположении этого города:
А вот что нам вернул сервер:
В скрипте мы получим эти же данные, а потом обработаем их, чтобы сразу видеть, как там с погодой, не разбираясь во всех этих числах.
Это JSON. Обратите внимание на строку выше. Это называется JSON — JavaScript Object Notation. Это способ передать структурированные данные от одной программы к другой, используя при этом строку текста. В этой строке зашифрованы объекты, их свойства и значения.
Например, видно, что сначала мы задаём нечто под названием coord (координаты), внутри него лежат две сущности lon и lat — широта и долгота. В каждой из этих сущностей лежат числа. Получается, что мы зашифровали в строке какие-то координаты. Благодаря этой разметке можно вкладывать много сущностей друг в друга и передавать так данные между программами. Читайте подробнее об этом в нашей статье про JSON.
Отправляем запрос и выводим результат
Для отправки запроса в службу погоды используем команду requests.get().json() .
Команда Get() отвечает за сам запрос, а json() разбирает ответ в json-формате на составляющие, с которыми потом будет удобно работать:
После этой команды в переменной weather_data появятся все данные с сервера. Чтобы посмотреть их в удобном виде, используем такие команды:
weather_data_structure = json.dumps(weather_data, indent=2) print(weather_data_structure)
Видно, что данные остались теми же, но стали выглядеть структурированно и понятно. Например, можно заметить, что данные о погоде лежат в разделе main в блоке temp . Используем это, чтобы вывести значение температуры в выбранном городе и то, как она ощущается. Сразу округлим значения функцией round() , чтобы воспринимать градусы было удобнее:
# получаем данные о температуре и о том, как она ощущается temperature = round(weather_data['main']['temp']) temperature_feels = round(weather_data['main']['feels_like']) # выводим значения на экран print('Сейчас в городе', city, str(temperature), '°C') print('Ощущается как', str(temperature_feels), '°C')
Готовый код
# подключаем библиотеку для работы с запросами import requests # указываем город city = 'Сочи' # формируем запрос url = 'https://api.openweathermap.org/data/2.5/weather?q='+city+'&units=metric&lang=ru&appid=79d1ca96933b0328e1c7e3e7a26cb347' # отправляем запрос на сервер и сразу получаем результат weather_data = requests.get(url).json() # получаем данные о температуре и о том, как она ощущается temperature = round(weather_data['main']['temp']) temperature_feels = round(weather_data['main']['feels_like']) # выводим значения на экран print('Сейчас в городе', city, str(temperature), '°C') print('Ощущается как', str(temperature_feels), '°C')
Что дальше
Теперь, когда вы знаете, как выглядит структура данных с ответом от сервера и как получить к ним доступ, вы сможете вывести:
- скорость ветра;
- время рассвета и заката;
- облачность;
- координаты города;
- и много других параметров.
Если хотите разобраться с тем, как работать с такими данными и что ещё можно с ними сделать, — пройдите бесплатный тренажёр «Прогноз погоды на Python за час». Там есть моменты, которые мы не разбирали в статье, — про работу функций и json-форматирование.
Попробуйте бесплатное в «Яндекс Практикуме»
В «Яндекс Практикуме» есть бесплатные курсы, на которых можно получить полезные навыки для работы в ИТ: от Git и Excel до основ Python и облачных технологий.
Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.