суббота, 9 января 2021 г.

Приложения Shiny

Интерактивные веб-приложения с Shiny

     Пакет Shiny, созданный разработчиками RStudio, представляет собой  эффективное средство создания интерактивных веб-приложений на языке R, поддерживающих современные клиент-серверные технологии.  Сервер (удаленный компьютер), на котором установлена статистическая среда  со всеми необходимыми пакетами, транслирует команды языка R в блоки HTML-кода, формирующие веб-страницу на клиентском компьютере, на котором достаточно установить только интернет-браузер. Созданная веб-страница включает, как правило, реактивные компоненты пользовательского интерфейса - графические виджеты, с помощью которых  клиент может ввести исходные данные, установить необходимые параметры расчетов или выполнить иные действия. Сервер отслеживает все изменения на клиентской стороне и изменяет выходные значения по всей цепочке выражений, которые немедленно обновляются браузером на клиентской стороне.
     Весь пользовательский веб-интерфейс приложения Shiny может быть описан полностью с помощью средств языка R, но для большей гибкости может включать фрагменты кодов HTML, CSS или JavaScript. Разрабатывать Shiny-приложения можно в любой версии среды R (консольная версия R, Rgui для Windows или Mac, ESS, StatET, RStudio и другие). В сообщении ниже дается краткое описание основных компонентов пакета Shiny и правила их использования, а также приведены некоторые практические примеры.
     В разделе"1. Краткий курс Shiny" описывается структура  Shiny – скриптов, наиболее употребимые макеты страницы и средства пользовательского интерфейса (виджеты клиентской части). Представлены также функции server() и механизм обработки прерываний, основанный на принципах "реактивного программирования".   Описана методика продвижения  Shiny-приложений в интернете, основанная на двух подходах. Первый основан на совмещении клиента и сервера на одном компьютере (или в одной сети) и пользователь запускает скрипты собственного (а также скачанного или размещенного на github-серверах) приложения из среды R. Второй основан на развертывании серверной части приложения на удаленном компьютере и клиент может подключаться к нему, располагая лишь адресом URL. Все эти процедуры могут быть выполнены с помощью функций пакета Shiny.
     Во втором разделе приведены некоторые примеры приложений  Shiny  и представлены их скрипты. В двух примерах экологического  характера показаны подбор статистических распределений, управление таблицами данных, выполнение многомерного анализа соответствий (СА), построение ранговых моделей обилия видов и т.д.  Приведен текст скрипта, вычисляющего 22 индекса видового разнообразия.
       Еще два примера, могут быть интересны не только экологам:
   Пример 3. Скачивание  Google-таблицы со списком  аудиокниг из архива на Telegram (канал  https://t.me/arxiv_audio_books ) , содержащем более 36000 наименований. Попытка организации поиска  интересующих авторов и чтецов.
    Пример 4. Имитация игры в американскую рулетку и сравнительная оценка эффективности систем "На красное", "На номер",Мартингейла и Лабушера.  
 
Текст сообщения в формате PDF может быть загружен с ресурса 
  

вторник, 24 ноября 2020 г.

Модели SDM

 Модели пространственного распределения видов

      В нашем предыдущем сообщении Визуализация на картах: мы рассматривали задачу двумерной интерполяции произвольного показателя и отображение его на картах.     В настоящем сообщении мы пойдем дальше  и обсудим проблему выделения областей встречаемости (или ареалов) биологических видов. Во введении и далее по тексту  подробно рассматриваются основные теоретические концепции построения моделей пространственного распределения видов  (SDM - species distribution models) и приводится достаточно обширный список литературных ссылок.

      Для построения моделей в наших примерах используются те же картографические объекты и таблицы данных, что и в предыдущем сообщении. Однако  в число предикторов моделей, кроме характеристик локальных биотопов исследованных рек, включен также набор геоморфологических и климатических показателей региона, скачиваемый с сервера свободно распространяемой информации WorldClim. Показаны основные функции работы с геоинформационными объектами типа raster.

Рассматриваются четыре основных направления построения  моделей SDM:

  • для данных типа "только наличие" вида (presence-only) показано применение моделей, основанных на формировании случайных наборов фоновых точек (pseudo-absence), которые реализуются программой BIOCLM из пакета dismo и модулем MaxEnt, использующем метод максимальной энтропии; 
  • распределение "виртуального вида" (virtual species) абстрагируется от данных экспедиционных исследований о встречаемости таксонов и моделирует ячеистую структуру в n-мерном пространстве, основываясь исключительно на факторах среды априори заданной фундаментальной экологической ниши;  
  • для данных типа "наличие-отсутствие вида" (presence-absence) показано построение различных моделей регрессионного типа: а) обычной линейной модели, б) модели lasso с использованием регуляризации, в) модели частных наименьших квадратов в редуцированном пространстве переменных, г) случайного леса (Random Forest),  д) по методу опорных векторов с радиальным ядром, е) байесовской модели со смешанными параметрами, ж) коллективной модели; 
  •  при моделировании совместного распределения ансамбля видов (JSDM - join species distribution models) описывается структура многомерной байесовской иерархической модели, представленной в составе пакета Hmsc и включающей пространственную автокорреляцию и филогенетический сигнал.

Текст сообщения в формате PDF может быть загружен с ресурса
http://www.ievbras.ru/ecostat/Kiril/R/Blog/18_SDM.pdf 

  

четверг, 10 сентября 2020 г.

Визуализация на картах

Интерполяция и визуализация пространственных данных

   Рассматривается процесс создания совокупности тематических карт, позволяющий отобразить и проанализировать результаты  пространственного распределения исследуемых показателей.
      Сообщение состоит из четырех разделов и основано на примере гидробиологической съемки бентоса в малых реках Среднего и Нижнего Поволжья:
      1. Подготовка базового картографического слоя. Основная карта (подложка) включает речную сеть, границы административных областей и важнейшие города. Показывается загрузка бокса данных из свободно распространяемых ресурсов  Natural  Earth, GADM  и  OpenStreetMap. Карта формируется  в виде слоев графического пакета ggplot2.
      2. Наложение на карту информации по теме исследования в виде точек, мозаики и двумерной плотности статистического распределения.  Рассматривается моделирование глобального тренда плоскостью и оценивается его статистическая значимость на основе рандомизации.
      3. Аппроксимация и интерполяция пространственного распределения показателя Z с использованием детерминированных методов: полиномов, локальной регрессии, обратных взвешенных расстояний, триангуляции (метод Акимы) и иерархических базисных сплайнов.
4. Построение вариограмм и интерполяция показателя с помощью геостатистических методов (ординарного кригинга).
      Текст сообщения в формате PDF может быть загружен с ресурса
http://www.ievbras.ru/ecostat/Kiril/R/Blog/17_MetMap.pdf 
      Исходные данные, обрабатываемые с помошью скриптов, представленных в сообщении  можно скачать  с 
http://www.ievbras.ru/ecostat/Kiril/R/Blog/WB_data.RData
      Готовую карту после отработки скриптов раздела 1 (если его процедуры не представляют интереса) также можно скачать с
http://www.ievbras.ru/ecostat/Kiril/R/Blog/WB_map.RData
 

среда, 22 апреля 2020 г.

Имитационные модели

Имитационные модели для анализа процессов в экологических сообществах

Подробно рассматриваются коды скриптов R для реализации различных имитационных моделей, осуществляющих анализ  четырех основных процессов (отбор, дрейф, рассеяние, видообразование), которые определяют динамику формирования экологических сообществ, в том числе:
 - имитация стохастической  динамики локального нейтрального  сообщества;
 - моделирование различных типов динамики конкурентного отбора видов в условиях различной их приспособляемости (fitness) к факторам среды; 
 - моделирование периодических процессов, флуктуируюших во времени;
 - анализ условий стабильного совместного сосуществования видов мета-сообщества в результате компромисса между конкуренцией (отбором) и колонизацией (рассеянием);
 - оценка динамики процессов образования регионального пула видов на "материке" и моделирование характера изменчивости видового состава локальных сообществ на "островах" с использованием концепции МакАртура-Вильсона (1967).
 Все цитируемые теоретические обоснования и дополнительные материалы по использованию представленных имитационных моделей содержатся в книге канадского эколога М.Велленда "Теория экологических сообществ" (Vellend M. The theory of ecological communities. Princeton University Press, 2016. 224 р.  - www.ievbras.ru/ecostat/Kiril/R/Biblio_N/R_Eng/Vellend2016.pdf).
Примечание: на фото - автор книги за сбором одуванчиков в канадских лесах.

Текст сообщения в формате PDF может быть загружен с ресурса
http://www.ievbras.ru/ecostat/Kiril/R/Blog/16_Vellend.pdf 

среда, 12 февраля 2020 г.

Пакеты R по экологии

Анализ данных в экологии: обзор задач, решаемых R

Gavin Simpson «CRAN Task View: Analysis of Ecological and Environmental Data». 16-01-2020.    https://CRAN.R-project.org/view=Environmetrics

Представляемый перевод обзора  содержит краткий список пакетов, доступных в CRAN, которые являются основой для создания различных статистических моделей в экологических исследованиях и получили широкое применение при изучении различных процессов окружающей среды. Пакеты сгруппированы по темам и типам анализа. 
Текст сообщения в формате PDF может быть загружен с ресурса
http://www.ievbras.ru/ecostat/Kiril/R/Blog/15_View.pdf 

среда, 22 января 2020 г.

Визуализация корреляций

Моделирование корреляционных связей в сообществе с помощью сетей

Использование корреляционных графов (плеяд Терентьева) имеет давнюю традицию для визуализации и анализа связей в сообществах.  Настоящее сообщение рассматривает технику применения функций пакета qgraph версии 1.6.4  на примере анализа таксономической структуры сообществ водных организмов по серии гидробиологических проб. В нем рассматривается целый круг методических вопросов, в том числе:
  • различные формы и элементы дизайна, используемые при построении насыщенных графов корреляционных сетей;
  • выделение статистически значимых связей между узлами;
  • способы задания группировки узлов и использование методов многомерного анализа для целенаправленной ординации и кластеризации данных;
  • частные корреляционные сети и пути решения проблем, связанные с отрицательной определенностью корреляционной матрицы;
  • использование препроцессинга исходного пространства признаков с использованием алгоритма Boruta;
  • нахождение оптимального графа сети с использованием пошаговой процедуры и информационных критериев;
  • оптимизация частной корреляционной сети на основе адаптивного алгоритма регуляризации лассо.
Показано, что пакет qgraph  является  не только превосходным инструментом визуализации сетей, но и содержит полный набор графоаналитических методов, включая «разрежение» взвешенных матриц данных и оптимизацию структуры формируемого графа.
Текст сообщения в формате PDF может быть загружен с ресурса
http://www.ievbras.ru/ecostat/Kiril/R/Blog/14_QGraph.pdf 

четверг, 5 декабря 2019 г.

Бинарные временные ряды



Рассматриваются проблемы форвардного прогнозирования  значений бинарных временных рядов (binary time series predicting). В качестве рабочего примера  использовался фрагмент базы данных о частоте посещений одним из покупателей в течение трех лет  магазинов популярной российской кампании (может быть загружен с ресурса  
http://www.ievbras.ru/ecostat/Kiril/R/Blog/POS10x.RData ) .
     Ставилась задача предсказания дат наиболее вероятных визитов в течение некоторого тестируемого периода. Наилучшее решение искалось с использованием трех основных концепций построения моделей временных рядов:
        1. В классе обобщенных моделей, использующих пространства состояний (Generalized State Space Modeling) . С помощью функций пакета glarma (Generalized Linear AutoRegressive Moving Average) выполнялось построение линейных моделей авторегрессии - скользящего среднего для дискретной случайной величины, имеющей Бернулли, биномиальное, Пуассона или отрицательное биномиальное распределение. Другой вариант моделей того же бинарного временного ряда был получен с использованием пакета tscount.
       2. На основе байесовской структурной модели временных рядов (Bayesian structural time series). Расчеты выполнялись с использованием функций, реализованных в пакете bsts.
     3. С использованием однородных марковских цепей дискретного временного ряда.  Классический подход к моделированию марковских процессов (без какого-либо ощутимого успеха) был  апробирован на основе пакета  markovchain.  Значительно более впечатляющие результаты прогнозирования были получены  при использовании другого пакета depmixS4, который реализует в среде программирования R общие принципы формирования стандартных и скрытых моделей марковских цепей. 
     Результаты тестов на форвардное прогнозирование временного ряда, полученные вышеперечисленными пятью пакетами, сравнивались с простейшим способом предсказания на основе оценок вероятностной плотности распределения событий. 
С методической точки зрения при  могут быть интересны некоторые приемы обработки исходных данных на основе библиотеки  "tidy data" Х.Викхэма 

Текст сообщения в формате PDF может быть загружен с ресурса
http://www.ievbras.ru/ecostat/Kiril/R/Blog/13_BTS.pdf