Mazama Science только что закончила создание учебных материалов по использованию R для команды AirFire в лаборатории естественных наук о пожаре в Тихоокеанском регионе США, Сиэтл, штат Вашингтон. Эта команда ученых работает над мониторингом и моделированием выбросов от пожаров, дыма и качества воздуха. Команда AirFire предоставила разрешение на публикацию этих материалов для общественности, чтобы побудить ученых из других учреждений экспериментировать с R для их повседневной работы. Подробный учебный план следует.
Полный класс доступен по этому адресу:
http://mazamascience.com/Classes/PWFSL_2014/
Материалы класса разбиты на девять отдельных уроков, которые предполагают некоторый опыт написания кода, но не обязательно какое-либо знакомство с R. Autodidacts, плохо знакомый с R, должен пройти около 20-30 часов, чтобы закончить курс. Целевая аудитория этих материалов состоит из сотрудников USFS или аспирантов со степенью в области естественных наук и некоторого опыта использования научного программного обеспечения, такого как MATLAB или python. Уроки представлены в последовательном порядке и предполагают, что у ученика уже установлены R и RStudio на их компьютере. Дополнительные системные библиотеки, такие как NetCDF , необходимы для последующих уроков.
Вот основные наброски освещаемых тем.
Урок 01 — Первые шаги с R
Первый урок служит введением в фундаментальные концепции программирования в R: функции, операторы, векторизованные данные и структуры данных ( вектор , список , матрица , фрейм данных ). К концу первого урока учащиеся должны быть в состоянии открыть и построить простые фреймы данных и получить доступ к справочным документам и исходному коду, связанному с функциями R.
Урок 02 — Работа с датафреймами
Урок 02 посвящен фреймам данных и использует общедоступные данные о лесных пожарах и предписанных ожогах в качестве примера. Этот урок включает в себя обсуждение факторов и способов создания логических масок для поднабора данных, а также графических параметров, используемых при настройке основных графиков.
Урок 03 — ‘dplyr’ для сводной статистики
Урок 03 знакомит с пакетом dplyr и его основными функциями: filter (), select (), group_by (), sumrize () иrange (). Этот урок заканчивается набором задач, побуждающих студентов писать код, подобный следующему примеру, приведенному в уроке:
# Take the "fires" dataset # then filter for type == "WF" # then group by state # then calculate total area by state # then arrange in descending order by total # finally, put the result in wildfireAreaByState fires %>% filter(type == "WF") %>% group_by(state) %>% summarize(total=sum(area, na.rm=TRUE)) %>% arrange(desc(total)) -> wildfireAreaByState
Урок 04 — Бары и пироги
На уроке 04 основное внимание уделяется функциям barplot () и pie () и связанным с ними настройкам построения графиков, так что учащиеся в конечном итоге преобразуют сводные таблицы из предыдущего урока в многопанельные графики
Урок 05 — Простые карты
Урок 05 представляет пакет карт и использует его для построения данных о пожарах.
Урок 06 — Панель инструментов
Урок 06 состоит из более длинного сценария, который определяет несколько функций для инкапсуляции всей работы, описанной в предыдущих уроках. Конечным результатом является функция, которая принимает один аргумент метки даты, создает соответствующий URL-адрес, импортирует данные CSV в виде фрейма данных, а затем обрабатывает и отображает эти данные в качестве сводной «информационной панели», подходящей для использования в системе поддержки принятия решений.
Урок 07 — Первые шаги BlueSky
На уроке 07 представлен пакет ncdf4 для работы с выходными данными модели BlueSky, прогнозирующими пространственную протяженность и концентрацию пожара при пожаре. Урок посвящен процессу чтения и понимания файла NetCDF, а затем представляет скрипт для преобразования существующих файлов в модернизированные эквиваленты, с которыми легче работать.
Урок 08 — Работа с массивами
В модели квадратов сетки наборы данных , введенные в Уроке 07 сделаны доступными в качестве многомерных R массивов . Урок 08 описывает более подробно, как работать с массивами и как генерировать многомерную статистику с помощью функции apply (). К концу урока учащиеся должны быть в состоянии выполнять все более подробный анализ подмножеств данных.
Урок 09 — Работа с датами и временем
Урок 09 более детально описывает измерение времени и охватывает использование типа данных POSIXct и пакета lubridate , особенно для работы с часовыми поясами местного и UTC. Пакет openair также представлен специально для функций rollMean () и timeAverage (), которые упрощают сравнение временных рядов, определенных на разных временных осях, что очень важно при сравнении данных модели и датчика.
Мы надеемся, что эти уроки вдохновят людей, работающих в Лесной службе или других государственных научных учреждениях, взглянуть на R и поэкспериментировать с ним для решения различных задач управления данными, анализа и визуализации. У R есть крутая кривая обучения, но после освоения он предоставляет пользователям чрезвычайно мощный и настраиваемый инструмент для всех видов анализа.
Лучший из Удачи Learning R!