Где я могу найти исторические необработанные данные о погоде? [закрытый]


где я могу найти исторические необработанные данные о погоде для проекта, который я делаю с упором на США и Канаду. Мне нужны температуры в основном, но другие детали были бы хороши. Мне очень трудно найти эти данные. Я действительно не хочу, чтобы соскоблить сайт погоды.

3 66

3 ответа:

в Национальной лаборатории сильных штормов США Архив Исторических Погодных Данных (примечание: с тех пор это было удалено).

кроме того, Национальный центр климатических данных США Портал Геоданных.

Национальный Центр Климатических Данных США Климатические Данные Онлайн.

Национальный Центр Климатических Данных США Самые Популярные Продукты.

Я задал тот же вопрос, и поделюсь своим опытом для будущих гуглеры.

источники данных

Я хотел необработанные данные, и много его... API не будет делать. Мне нужно было направиться прямо к источнику. Лучшим источником для всех этих данных, по-видимому, были серверы NCEP или NCDC NOMADS:

http://nomads.ncdc.noaa.gov/dods/ http://nomads.ncep.noaa.gov/dods/

чтобы дать представление о количестве данных, их данные идут вплоть до 1979 года! Если вы ищете Канаду и США, североамериканский региональный набор данных реанализа, вероятно, ваш лучший ответ.

используя данные

Я большой пользователь python, и либо pydap или NetCDF казалось, что хорошие инструменты для использования. Без особой причины я начал играть с pydap.

дать пример того, как получить все данные о температуре для конкретного местоположения с веб-сайта nomads, попробуйте следующее в python:

from pydap.client import open_url

# setup the connection
url = 'http://nomads.ncdc.noaa.gov/dods/NCEP_NARR_DAILY/197901/197901/narr-a_221_197901dd_hh00_000'
modelconn = open_url(url)
tmp2m = modelconn['tmp2m']

# grab the data
lat_index = 200    # you could tie this to tmp2m.lat[:]
lon_index = 200    # you could tie this to tmp2m.lon[:]
print tmp2m.array[:,lat_index,lon_index] 

приведенный выше фрагмент даст вам временной ряд (каждые три часа) данных за весь январь 1979 года! Если вам нужно несколько мест или все месяцы, приведенный выше код будет легко изменен для размещения.

супер-данные... и дальше!

Я не был счастлив остановиться там. Я хотел эти данные в База данных SQL, чтобы я мог легко нарезать и нарезать ее кубиками. Отличным вариантом для выполнения всего этого является модуль прогнозирования python.

раскрытие: я собрал код модуля. Код все с открытым исходным кодом - вы можете изменить его, чтобы лучше удовлетворить ваши потребности (может быть, вы прогнозируете для Марса?) или вытащить маленькие фрагменты для вашего проекта.

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

from forecasting import Model

rap = Model('rap')
rap.connect(database='weather', user='chef')
fields = ['tmp2m']
rap.transfer(fields)

а затем построить данные на карте хорошего ' ole США:

heat map of usa temperatures with data from sql

данные для графика поступали непосредственно из SQL и могли легко изменить запрос, чтобы получить любой тип данных.

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

wunderground.com имеет хороший API. Гости могут бесплатно совершать 500 звонков в день.

http://www.wunderground.com/weather/api/