행동 순서에서 협력을 증명하는 방법


10

상황 : 두 마리의 새 (수컷과 암컷)는 둥지에서 알을 침입자로부터 보호합니다. 각 새는 보호를 위해 공격이나 위협을 사용할 수 있으며 존재하거나 부재 할 수 있습니다. 행동은 상호 보완적일 수있는 데이터에서 나온 패턴이 있습니다.

내 질문은 : 어떻게 그러한 협력을 통계적으로 증명 하는가? 아니면 비슷한 분석을 다루는 행동 연구를 아는 사람이 있습니까? 내가 찾은 순차 분석의 대부분은 DNA에 집중되어 있습니다.

여기에 이미지 설명을 입력하십시오

여기에 더미 데이터를 제공 하지만 원래 데이터 세트는 둥지를 방어하면서 정확히 10 분 동안 기록 된 수십 쌍으로 구성됩니다. 따라서 모든 조류의 행동 순서는 600 개의 상태 (각 초마다 상태)입니다. 이 짧은 데이터는 전체 데이터 세트와 유사한 패턴을 포함해야합니다.

male_seq <- rep(c("absent","present","attack","threat","present","attack",
                  "threat","present","attack","absent"),
                  times = c(3,4,8,2,6,3,2,6,2,1))

female_seq <- rep(c("absent","present","threat","present","threat","present",
                    "threat","attack","present","threat","attack","present",
                    "attack","threat","absent"),
                  times = c(2,6,2,1,2,1,1,3,5,3,1,3,3,2,2))

2
(+1) 아름답고 잘 묘사 된 흥미로운 질문에 대한 답변!
Tim

1
실제 침입은 어떻게 발생합니까? 각 시퀀스는 연속 10 분 간격 또는 침입자가있는 간격에만 해당됩니까? "없음"은 둥지가 없거나 침입이 발생한 지역이 없음을 의미합니까?
Wayne

안녕 @ 웨인! 침입자는 처음부터 끝까지 존재합니다 (스틱에 포식자 더미 인형이 둥지를 튼 새들에게 10 분간 제시됨). 결석이란 둥지가없는 곳을 의미합니다. 때로는 부모가 도망칩니다 (때로는 몇 분 후에 돌아옵니다).
Ladislav Naďo

각 사각형 줄에 전체 침입이 포함되어 있으며 인접한 각 사각형은 연속 10 분 간격을 나타냅니다. 좋은. 이제 "협력"의 의미를 명확하게 설명 할 수 있습니까? 다른 역할을 의미합니까 (위협 대 공격), 경비 의무 공유 (부재 / 현재 대 위협 / 공격)를 의미합니까?
Wayne

협력이란 "남성이 공격 할 때 여성이 위협을한다"는 것을 의미하며 대안으로이 가설을 테스트하고 싶습니다. 남성 행동과 무관합니다).
Ladislav Naďo

답변:


3

마지막 의견 이후 두 번째 답변을 게시합니다

협력이란 "남성이 공격 할 때 여성이 위협을한다"는 것을 의미하며 대안으로이 가설을 테스트하고 싶습니다. 남성 행동과 무관합니다).

게임 체인저입니다. 문제는 완전히 다른 관점에서 접근 할 수있는 것 같습니다. 첫째, 당신은 수컷이 공격 할 때 표본의 일부 에만 관심 이 있습니다. 둘째, 그러한 경우에 여성이 무작위로 만든 경우 예상보다 더 자주 치료를하는 경우 관심이 있습니다. 이러한 가설을 테스트하기 위해 우리는 순열 테스트를 사용할 수 있습니다 무작위로 하나 셔플 male_seq또는 female_seq(그것은 중요하지 않습니다) 다음 경우의 경우를 계산 male_seq == "attack"하고 female_seq == "treat"널 분포를 얻을 수 있습니다. 다음으로, 데이터에서 얻은 개수와 null 분포의 개수를 비교하여 값 을 구합니다 .p

prmfun <- function() {
  sum(female_seq[sample(male_seq) == "attack"] == "threat")
}

mean(replicate(1e5, prmfun()) >= sum(female_seq[male_seq == "attack"] == "threat"))
## [1] 5e-05

여성의 "선호도"를 어떻게 정의 하느냐에 따라 테스트 통계를 다르게 정의 할 수 있습니다. 이 경우 순열 테스트는 당신의 직접적인 해석 : "여성의 행동은 남성의 행동과 무관", 것과 리드 : "여성의 행동이 무작위로 주어 남성의 행동한다", 그래서 행동 무작위로 아래 단행 할 수있다 .H0H0

또한 동작이 일정 기간 동안 반복 된 동일한 동작의 클러스터에 나타나는 것으로 가정하더라도 순열 테스트를 통해 전체 클러스터를 섞을 수 있습니다.

female_rle <- rle(female_seq)
n_rle <- length(female_rle$values)

prmfun2 <- function() {
  ord <- sample(n_rle)
  sim_female_seq <- rep(female_rle$values[ord], female_rle$lengths[ord])
  sum(sim_female_seq[male_seq == "attack"] == "threat")
}

mean(replicate(1e5, prmfun2()) >= sum(female_seq[male_seq == "attack"] == "threat"))
## [1] 0.00257

두 경우 모두 제공 한 데이터의 협력 패턴은 임의적 인 것으로 보이지 않습니다. 두 경우 모두이 데이터의 자기 상관 특성을 무시한다는 점을 유의하십시오. 남성이 공격 할 때 무작위 시점을 선택하면 여성이 동시에 치료를 할 가능성이 적거나 더 많습니까?

당신이 수행하는 동안 ( "때 ... 다음") 인과 관계에 대해 얘기하는 것 때문에 당신이 비교에 관심이있을 수 있습니다 순열 테스트에서 행동 수컷 에서 여성의 행동에 시간을 여성 ' "반응"에 무엇 (시간 수컷 행동?), 그러나 이것은 당신이 스스로에게 물어봐야 할 것입니다. 순열 테스트는 융통성이 있으며 설명하려는 문제에 쉽게 적용 할 수 있습니다.t1t


2

이변 량 Markov 체인의 관점에서 데이터를 생각할 수 있습니다. 시간 에서 와 의 변화 과정 을 4 개의 다른 상태 중 하나로 변경하는 것을 설명하는 두 개의 다른 변수 여성)와 남성)가 있습니다. 를 에서 시간으로, 번째에서 번째 상태 로 대한 전환 으로 봅시다 . 이 경우, 다른 상태로의 전이 시간에 이전 상태에 조건부 의 :XYXYtXt1,iXt,jXt1tijX Y

Pr(Xt1,iXt,j)=Pr(Xt,j|Xt1,i,Yt1,k)Pr(Yt1,hYt,k)=Pr(Yt,h|Yt1,k,Xt1,i)

전환 확률은 전환 내역을 계산하고 이후에 확률을 정규화하여 쉽게 계산할 수 있습니다.

states <- c("absent", "present", "attack", "threat")
# data is stored in 3-dimensional array, initialized with
# a very small "default" non-zero count to avoid zeros.
female_counts <- male_counts <- array(1e-16, c(4,4,4), list(states, states, states))
n <- length(male_seq)

for (i in 1:n) {
  male_counts[female_seq[i-1], male_seq[i-1], male_seq[i]] <- male_counts[female_seq[i-1], male_seq[i-1], male_seq[i]] + 1
  female_counts[male_seq[i-1], female_seq[i-1], female_seq[i]] <- female_counts[male_seq[i-1], female_seq[i-1], female_seq[i]] + 1
}

male_counts/sum(male_counts)
female_counts/sum(female_counts)

한계 확률을 사용하여 쉽게 시뮬레이션 할 수 있습니다.

male_sim <- female_sim <- "absent"

for (i in 2:nsim) {
  male_sim[i] <- sample(states, 1, prob = male_counts[female_sim[i-1], male_sim[i-1], ])
  female_sim[i] <- sample(states, 1, prob = female_counts[male_sim[i-1], female_sim[i-1], ])
}

이러한 시뮬레이션 결과는 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

또한, 사전 예측을하는 데 사용할 수 있습니다.

male_pred <- female_pred <- NULL

for (i in 2:n) {
  curr_m <- male_counts[female_seq[i-1], male_seq[i-1], ]
  curr_f <- female_counts[male_seq[i-1], female_seq[i-1], ]
  male_pred[i] <- sample(names(curr_m)[curr_m == max(curr_m)], 1)
  female_pred[i] <- sample(names(curr_f)[curr_f == max(curr_f)], 1)
}

제공 한 데이터에 대해 69-86 %의 정확도를 제공합니다.

> mean(male_seq == male_pred, na.rm = TRUE)
[1] 0.8611111
> mean(female_seq == female_pred, na.rm = TRUE)
[1] 0.6944444

전이가 무작위로 발생하면 전이 확률은 불연속 균일 분포를 따릅니다. 이것은 증거 는 아니지만 간단한 모델을 사용하여 데이터를 생각하는 방법으로 사용될 수 있습니다.


협력의 대안은 일종의 무작위 반응이라고 가정하는 것 같습니다. 대안이 사전 프로그래밍 된 비 응답 반응이라는 것을 알 수있었습니다. 예를 들어, 새가 원 안에 날아갑니다. 따라서 파트너가 침입자를 처리 할 때 원이 더 큽니다. 그래서 그들은 협력자없이 침입자를 차례로 다루지 만, 하나가 끝날 때까지 기다립니다.
Aksakal

@ Aksakal 그러나 질문은 상호 작용에 관한 것이며 설명하는 것은 일종의 상호 작용입니다. (이 단순한 모델이 옳다고 주장하지는 않습니다.)
Tim

OP는 그가 어떤 종류의 규칙적인 패턴을 찾고 있는지 또는 구체적으로 "협력"을 찾고 있는지 명확하지 않다는 것에 동의합니다. 같은 공간에서 세 마리의 새가 날 때, 어떤 종류의 행동 패턴이 나타나야한다고 주장합니다. "협력"은 단순한 패턴이 아니라고 생각합니다. 그렇지 않으면 침입자가 어떤 의미에서 협력하는 3 방향 협력이라고 말할 수 있습니다.
Aksakal

@ Aksakal 당신이 맞을 수도 있지만,이 데이터가 시간에 관찰 된 네 가지 상태로만 구성되어 있다면 내가 제안한 단순한 모델이 시작점으로 작용할 수 있습니다.
Tim
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.