Компьютерные программы для экологов

Обновлено: 03.07.2024

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

Школьная лаборатория искусственного интеллекта, MaineSAIL, проводит исследования в области вычислительной экологии как в небольших масштабах (взаимодействия хищник-жертва), так и в более крупном моделировании всей экосистемы.

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

Фото предоставлено Дэвидом Белзардом, UNH

Одним из потенциальных факторов, определяющих климаксное сообщество обрастания, является хищничество одних первых поселенцев на других. В некоторых устьевых сообществах, например в Новой Англии, первыми поселенцами являются гидроиды (колониальные книдарии, похожие на пресноводных гидр). На них охотятся голожаберники (морские слизни). Гидроиды, в свою очередь, охотятся на других личинок, поселяющихся на субстрате, но преимущественно на разных видах личинок. Таким образом, степень хищничества голожаберных моллюсков гидроидов, вероятно, повлияет на сукцессию в системе.

Мы разработали модель "хищник-жертва" для системы голожаберных и гидроидных. Выполняя моделирование модели в различных условиях предполагаемого роста и т. д. видов, биологи могут делать прогнозы о вероятном исходе событий хищничества, а также о последующем влиянии на преемственность сообщества.

<р>2. VORTEX/OUTBREAK/META-MODEL MANAGER и т. д.: Этот пакет программного обеспечения для индивидуального прогнозирования был разработан Бобом Лейси и Филом Миллером первоначально для определения жизнеспособности небольших (обычно содержащихся в неволе) популяций. Первоначальный VORTEX превратился в многоцелевой, мощный и сложный пакет анализа жизнеспособности популяции, который теперь связан с родственными приложениями, такими как OUTBREAK (единственное существующее готовое эпидемиологическое программное обеспечение) через «командный центр» META-MODEL MANAGER. (см. примеры здесь и здесь из нашей лаборатории). Существуют и другие дополнения, которые делают возможным практически любое приложение для прогнозирования численности населения и ретроспективных прогнозов. И все это бесплатно! (предупреждение: в настоящее время недоступно для Mac, хотя я уговаривал Боба сделать версию для Mac).

<р>3. RAMAS: RAMAS — это приложение для пространственного моделирования населения. Разработанный чрезвычайно умным Resit Akçakaya, это один из немногих инструментов, который включает аспекты пространственной метапопуляции с формальными когортными демографическими моделями. Это также очень полезно в контексте изменения климата, когда у вас есть прогнозы изменения пригодности среды обитания в качестве базового слоя, на котором можно моделировать динамику метапопуляции. Это не бесплатно, но стоит купить.

<р>4. MARXAN: Никакой список программных инструментов для сохранения не был бы полным без MARXAN (и огромный опоссум был бы более чем обеспокоен, если бы я не включил его сюда). Если вас интересуют планирование природоохранных мероприятий и проектирование заповедников, обратите внимание на это умное программное обеспечение с полным набором функций ГИС.

<р>5. InVEST: это семейство инструментов для картирования и оценки товаров и услуг природы, позволяющих лицам, принимающим решения, оценивать компромиссы, связанные с альтернативными вариантами выбора, и определять области, в которых инвестиции в природный капитал могут способствовать развитию и сохранению человека.

<р>6. ARC/GIS: Говоря о пространственных возможностях, если вам нужны хорошие возможности ГИС, вам, вероятно, придется раскошелиться на (довольно дорогой) пакет ARC/GIS. Я не большой поклонник корпоративных аспектов этого монстра, но, возможно, это самая мощная ГИС. Мне еще предстоит найти достойный пакет ГИС с открытым исходным кодом для ПК или Mac.

<р>7. BIOMOD: Хотя мы, как правило, моделируем распространение видов с нуля в таких пакетах, как R, тем, у кого меньше опыта, вероятно, понадобится что-то вроде BIOMOD с открытым исходным кодом. Программное обеспечение специально разработано для ансамблевого прогнозирования распределения видов (объединение выходных данных многих разных моделей) и реализовано на языке R.

<р>8.MAGICC/SCENGEN: «Модель для оценки изменения климата, вызванного парниковыми газами/ГЕНЕРАТОР СЦЕНАРИЙ ДЛЯ РЕГИОНАЛЬНОГО КЛИМАТИЧЕСКОГО ОБРАЗОВАНИЯ», представляет собой мощный эмулятор модели глобальной циркуляции (GCM), разработанный Томом Вигли (теперь часть нашей лаборатории). Если вы делаете какие-либо региональные прогнозы изменения климата, вам это понадобится.

<р>9. ECOPATH с ECOSIM: это мощное трио (включая ECOSPACE) приложений моделирует трофические связи, а затем моделирует, как возмущения каскадом распространяются на сообщества. С ECOSPACE вы даже можете смоделировать влияние виртуальных заповедников на динамику состава сообщества.

<р>10. WINBUGS: если вам нравится байесовский вывод, вам пригодится WINBUGS. Мощное (и бесплатное) байесовское статистическое программное обеспечение, которое также можно вызвать из R с помощью R2WINBUGS.

<р>11. МАРК: Я бы не продвинулся далеко без этого программного обеспечения — пчелиных коленей оценки параметров захвата-отметки-повторного захвата. Разработанный Гэри Уайтом и Кеном Бернхэмом много лет назад, он теперь включает в себя все возможные варианты модели метки-повторного захвата под солнцем. Если вам нужно оценить выживание, захват, эмиграцию, иммиграцию и т. д. с отмеченными людьми, вам нужно освоить MARK.

Как я уже сказал, этот список неполный. Я уверен, что у многих из вас есть свои любимые пакеты, поэтому, если у вас есть другие предложения для этого списка, добавьте их ниже и укажите URL-адрес для загрузки программного обеспечения.

Цель Data Carpentry — научить исследователей базовым понятиям, навыкам и инструментам для работы с данными, чтобы они могли делать больше за меньшее время и с меньшими трудностями. Приведенные ниже уроки предназначены для тех, кто интересуется работой с экологическими данными в R.

Это введение в R, предназначенное для участников, не имеющих опыта программирования. Эти уроки можно преподавать в течение дня (~ 6 часов). Они начинаются с некоторой базовой информации о синтаксисе R, интерфейсе RStudio, а затем переходят к тому, как импортировать файлы CSV, структуру фреймов данных, как работать с факторами, как добавлять/удалять строки и столбцы, как вычислять сводную статистику из фрейм данных и краткое введение в построение графиков. Последний урок демонстрирует, как работать с базами данных непосредственно из R.

Для этого урока не требуется предварительных знаний R или RStudio и опыта программирования.

Эпизоды

Подготовка

Обучение Data Carpentry является практическим, и чтобы следовать этому уроку, учащиеся должны иметь установленные R и RStudio на своих компьютерах. Они также должны иметь возможность устанавливать ряд пакетов R, создавать каталоги и загружать файлы.

Чтобы избежать устранения неполадок во время урока, учащиеся должны следовать приведенным ниже инструкциям, чтобы загрузить и установить все заранее. Если они используют свои собственные компьютеры, это не должно быть проблемой, но если компьютером управляет ИТ-отдел их организации, им может понадобиться помощь ИТ-администратора.

Установите R и RStudio

  • R – это язык программирования, который особенно удобен для исследования, визуализации и статистического анализа данных.
  • RStudio — это интегрированная среда разработки (IDE), упрощающая использование R. В этом курсе мы используем RStudio для взаимодействия с R.

Если у вас еще не установлены R и RStudio, следуйте приведенным ниже инструкциям для вашей операционной системы. Перед установкой RStudio необходимо установить R.

Окна

  • Загрузите R с веб-сайта CRAN.
  • Запустите только что загруженный файл .exe
  • Перейти на страницу загрузки RStudio
  • В разделе Установщики выберите RStudio x.yy.zzz — Windows Vista/7/8/10 (где x, y и z представляют номера версий)
  • Дважды щелкните файл, чтобы установить его.
  • После установки откройте RStudio, чтобы убедиться, что он работает и что вы не получаете никаких сообщений об ошибках.
MacOS
  • Загрузите R с веб-сайта CRAN.
  • Выберите файл .pkg для последней версии R.
  • Дважды щелкните загруженный файл, чтобы установить R.
  • Также рекомендуется установить XQuartz (необходим для некоторых пакетов)
  • Перейти на страницу загрузки RStudio
  • В разделе Установщики выберите RStudio x.yy.zzz — Mac OS X 10.6+ (64-разрядная версия) (где x, y и z представляют номера версий)
  • Дважды щелкните файл, чтобы установить RStudio.
  • После установки откройте RStudio, чтобы убедиться, что он работает и что вы не получаете никаких сообщений об ошибках.
Линукс
  • Следуйте инструкциям для вашего дистрибутива из CRAN, они предоставляют информацию, чтобы получить самую последнюю версию R для распространенных дистрибутивов. Для большинства дистрибутивов вы можете использовать менеджер пакетов (например, для Debian/Ubuntu запустите sudo apt-get install r-base и для Fedora sudo yum install R), но мы не рекомендуем этот подход, так как версии, предоставляемые этим обычно устаревают. В любом случае убедитесь, что у вас установлена ​​версия не ниже R 3.3.1.
  • Перейти на страницу загрузки RStudio
  • В разделе Установщики выберите версию, соответствующую вашему дистрибутиву, и установите ее предпочтительным способом (например, с помощью Debian/Ubuntu sudo dpkg -i rstudio-x.yy.zzz-amd64.deb по адресу терминал).
  • После установки откройте RStudio, чтобы убедиться, что он работает и что вы не получаете никаких сообщений об ошибках.

Обновление R и RStudio

Если у вас уже установлены R и RStudio, сначала проверьте, актуальна ли ваша версия R:

  • Когда вы откроете RStudio, ваша версия R будет напечатана в консоли внизу слева. Кроме того, вы можете ввести sessionInfo() в консоль. Если ваша версия R 4.0.0 или более поздняя, ​​вам не нужно обновлять R для этого урока. Если ваша версия R более старая, загрузите и установите последнюю версию R с веб-сайта проекта R для Windows, MacOS или Linux.
  • Не обязательно удалять старые версии R из вашей системы, но если вы хотите это сделать, вы можете проверить Как удалить R?
  • Примечание. Изменения, внесенные в новые версии R, обычно обратно совместимы. То есть ваш старый код должен по-прежнему работать после обновления вашей версии R. Однако, если происходят критические изменения, полезно знать, что у вас может быть несколько версий R, установленных параллельно, и что вы можете переключаться между ними в RStudio, перейдя в Инструменты > Глобальные параметры > Общие > Основные .
  • После установки новой версии R вам придется переустановить все свои пакеты с новой версией. Для Windows существует пакет installr, который поможет вам обновить версию R и перенести библиотеку пакетов.

Чтобы обновить RStudio до последней версии, откройте RStudio и нажмите «Справка» > «Проверить наличие обновлений». Если доступна новая версия, следуйте инструкциям на экране. По умолчанию RStudio также время от времени автоматически уведомляет вас о новых версиях.

Установите необходимые пакеты R

В ходе курса нам понадобится несколько пакетов R. Пакеты содержат полезный код R, написанный другими людьми. Мы будем использовать пакеты tidyverse, hexbin, patchwork и RSQLite.

Чтобы попытаться установить эти пакеты, откройте RStudio, скопируйте и вставьте следующую команду в окно консоли (найдите мигающий курсор в левом нижнем углу), затем нажмите Enter (Windows и Linux) или Return (MacOS), чтобы выполнить команду.

Кроме того, вы можете установить пакеты с помощью графического пользовательского интерфейса RStudio, перейдя в Инструменты > Установить пакеты и введя имена пакетов через запятую.

R пытается загрузить и установить пакеты на ваш компьютер. После завершения установки вы можете попробовать загрузить пакеты, вставив в консоль следующий код:

Если вы не видите сообщения об ошибке, например, что пакета с именем ‘. ’ вы готовы идти!

Обновление пакетов R

Как правило, рекомендуется поддерживать версию R и все пакеты в актуальном состоянии, поскольку новые версии содержат улучшения и важные исправления. Чтобы обновить установленные пакеты, нажмите «Обновить» на вкладке «Пакеты» в нижней правой панели RStudio или выберите «Инструменты» > «Проверить наличие обновлений пакетов». .

Иногда обновления пакетов вносят изменения, которые нарушают ваш старый код, что может быть очень неприятно. Чтобы избежать этой проблемы, вы можете использовать пакет renv. Он блокирует версии пакетов, которые вы использовали для данного проекта, и упрощает переустановку этих точных версий пакетов в новой среде, например, после обновления вашей версии R или на другом компьютере. Однако подробности выходят за рамки этого урока.

Загрузить данные

Во время уроков мы будем загружать данные напрямую из R. Однако, если вы ожидаете проблем с сетью, лучше заранее загрузить данные и сохранить их на своем компьютере.

Соавторы

Список участников этого урока доступен здесь.

Страница создана: 📆 16.03.2022 ‒ 🕢 15:21:54

Если этот урок полезен для вас, подпишитесь на нашу рассылку или сделайте пожертвование в поддержку работы The Carpentries .

Программное обеспечение для экологов

И последнее, необходимость в неграфическом интерфейсе, как правило, сбивает с толку людей, чей единственный опыт работы с компьютером - это Windows или аналогичная графическая операционная система. Однако все просто: как и большинство экологов, я работаю с большими объемами данных — растительностью, климатом, почвами, ГИС — и твердо убежден, что все, что мне нужно сделать более трех раз, должно быть автоматизировано. Настройка пакетного скрипта, макроса или чего-то еще поначалу требует некоторого времени, чтобы все работало правильно. Однако в использовании он имеет ряд преимуществ. Частота ошибок значительно снижается, потому что компьютер каждый раз будет делать одно и то же. Мое время экономится, так как мне не нужно часами щелкать меню или вносить правки вручную.И, наконец, за несколько лет работы я собрал большую коллекцию сценариев для различных ситуаций. Большинство из них можно использовать повторно с небольшими изменениями для соответствия полевым данным нового года или для повторного анализа другого набора данных.

Общие инструменты

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

Linux предоставляет множество инструментов для работы с текстовыми файлами — сортировки, поиска элементов и т. д. — которые просто недоступны в Windows, если вы не установите надстройку, такую ​​как порт unxutils некоторых ключевых утилит или более сложный cygwin. . В сочетании с VIM (см. выше) один из этих пакетов дает мне возможность комплексного управления данными в Linux или Windows.

Для обычных онлайн-задач я предпочитаю Firefox для просмотра веб-страниц и Thunderbird для работы с электронной почтой. Оба являются продуктами Mozilla.

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

Существует множество приложений для организации, редактирования и анализа изображений. Я делаю много фотографий в полевых условиях, а также время от времени анализирую, скажем, зеленый покров на изображении. Picasa отлично справляется с организацией изображений в Windows. Я использую igal для превращения своих коллекций фотографий в веб-страницы с миниатюрами, но не могу заставить его работать в Windows. Я считаю, что ImageMagick (Windows и Linux) необходим для пакетного преобразования, изменения размера и других преобразований изображений. Я не часто использовал IrfanView, но кажется, что он предоставляет графический интерфейс для аналогичных задач для использования в Windows. Для определенных задач анализа, таких как подсчет капель и оценка площади, полезен инструмент NIH ImageJ.

Анализ данных и управление ими

Моим самым важным инструментом (ну, может быть, связанным с соответствующим текстовым редактором) является статистическое программное обеспечение R. С помощью этого статистического языка программирования можно делать практически все, и активное сообщество пользователей, скорее всего, уже написало пакет, чтобы делать то, что вы ищете. Это это язык программирования, который имеет как командную строку, так и пакетную операцию, но R Commander — это один из вариантов добавления графического интерфейса для часто используемой статистики. RStudio также популярен.

Электронные таблицы плохо подходят для управления большими и сложными наборами данных. Реляционная база данных намного лучше. Я использовал как MySQL, так и PostgreSQL. Для данных продолжающегося регионального исследования я собрал базу данных PostgreSQL с веб-интерфейсом Zope, чтобы другим ученым и техническим специалистам, которым необходимо использовать данные, не нужно было учиться SQL, чтобы добраться до него. Обновление: я больше не использую Zope после того, как обновление сломало все, и у меня не было времени полностью переделать его, но Zope остается популярным.

Последняя часть — программное обеспечение ГИС. Я использовал различные варианты, но в настоящее время использую GRASS, потому что он имеет хорошие возможности пакетной обработки и возможность прямой связи с R. Это непростое программное обеспечение — мне потребовалось много времени, чтобы привыкнуть к нему, — но оно очень мощный, особенно в сочетании с R.

Читайте также: