Хобрук: Ваш путь к мастерству в программировании

Расчет минимального числа живых (MNA)

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

MNA рассчитывается по формуле:

фактическое количество особей, пойманных в момент времени (t) + присутствующих, не пойманных в момент времени (t), но пойманных впоследствии (Кребс, 1966)

У меня есть двоичные данные (1 для захвата, 0 для отсутствия захвата) 9 первичных периодов захвата, состоящих из 44 вторичных периодов захвата для 101 особи. Мне нужно сжать данные захвата вторичного периода либо до 0, либо до 1 для каждого первичного периода захвата. Таким образом, я могу рассчитать MNA для каждого периода первичного захвата.

Весьма признателен,

Таня

20.09.2013

  • Вы должны опубликовать вывод из dput(head(dat, 30)), где «dat» — ваш фрейм данных. 20.09.2013

Ответы:


1

Это, кажется, сжимает ваши данные вторичного периода. Однако имейте в виду, что животные 6 и 10, как известно, живы во втором основном периоде, хотя тогда они не были обнаружены. Кроме того, неизвестно, живо ли Животное 5 в первый первичный период просто потому, что оно было обнаружено после первого первичного периода... ...если только вы не предполагаете, что среди первичных периодов не было рождений.

В этом примере есть три первичных периода и три вторичных периода.

Я не пытался оценить минимальное число живых, потому что мне неясны ваши предположения относительно географической и демографической закрытости. Тем не менее, мы надеемся, что приведенная ниже сводка данных окажется полезной.

my.data <- as.data.frame(matrix(rbinom(10*9,1,0.2), nrow = 10, byrow=FALSE))
my.data

#   V1 V2 V3 V4 V5 V6 V7 V8 V9
#1   0  0  0  0  0  0  0  1  1
#2   0  0  0  0  0  0  0  0  0
#3   0  0  0  0  0  0  0  0  0
#4   0  0  1  0  0  0  0  0  0
#5   0  0  0  0  0  1  0  1  1
#6   0  1  0  0  0  0  0  0  1
#7   1  1  1  0  0  0  0  0  0
#8   1  0  0  0  1  0  0  0  0
#9   0  0  0  0  1  0  1  1  1
#10  1  0  0  0  0  0  0  0  1

year.sums <- sapply(1:3, function(i)  apply(my.data[,(3*(i-1)+1):(3*(i-0))], 1, function(x) sum(x)) )
year.sums

#      [,1] [,2] [,3]
# [1,]    0    0    2
# [2,]    0    0    0
# [3,]    0    0    0
# [4,]    1    0    0
# [5,]    0    1    2
# [6,]    1    0    1
# [7,]    3    0    0
# [8,]    1    1    0
# [9,]    0    1    3
#[10,]    1    0    1

year.sums[year.sums>0] <- 1
year.sums

#      [,1] [,2] [,3]
# [1,]    0    0    1
# [2,]    0    0    0
# [3,]    0    0    0
# [4,]    1    0    0
# [5,]    0    1    1
# [6,]    1    0    1
# [7,]    1    0    0
# [8,]    1    1    0
# [9,]    0    1    1
#[10,]    1    0    1
20.09.2013
  • Другой способ: t(apply(my.data,1,tapply,rep(1:3,each=3),sum)>0)+0 20.09.2013
  • Новые материалы

    Я собираюсь научить вас Python шаг за шагом
    Привет, уважаемый энтузиаст Python! 👋 Готовы погрузиться в мир Python? Сегодня я приготовил для вас кое-что интересное, что сделает ваше путешествие более приятным, чем шарик мороженого в..

    Альтернатива шаблону исходящих сообщений для архитектуры микросервисов
    Познакомьтесь с двухэтапным сообщением В этой статье предлагается альтернативный шаблон для папки Исходящие : двухэтапное сообщение. Он основан не на очереди сообщений, а на..

    React on Rails
    Основное приложение Reverb - это всеми любимый монолит Rails. Он отлично обслуживает наш API и уровень просмотра трафика. По мере роста мы добавляли больше интерактивных элементов..

    Что такое гибкие методологии разработки программного обеспечения
    Что представляют собой гибкие методологии разработки программного обеспечения в 2023 году Agile-методологии разработки программного обеспечения заключаются в следующем: И. Введение A...

    Ториго  — революция в игре Го
    Наш следующий вызов против ИИ и для ИИ. Сможет ли он победить людей в обновленной игре Го? Обратите внимание, что в следующей статье AI означает искусственный интеллект, а Goban  —..

    Простое развертывание моделей с помощью Mlflow — Упаковка классификатора обзоров продуктов NLP от HuggingFace
    Как сохранить свои модели машинного обучения в формате с открытым исходным кодом с помощью MLFlow, чтобы позже получить возможность легкого развертывания. Сегодня модели упаковки имеют несколько..

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