library(siar) library(MCMCpack) library(sna) library(tnet) library(igraph) association <- function (n.birds,test) { Ass <- matrix(0,nrow=n.birds,ncol=n.birds) for (i in 1:length(test)){ if (test[i]) { Ass[i,test] <- 1 } diag(Ass) <- 0 colnames(Ass) <- 1:n.birds rownames(Ass) <- 1:n.birds } return(Ass) } population<-seq(1:100) n.birds<-length(population) samples<-seq(1:20) n.samples<-length(samples) Assarr<-array(0,dim=c(n.birds,n.birds,n.samples)) correlations<-matrix(NA,nc=10,nr=20) correlations2<-matrix(NA,nc=10,nr=20) for (k in 1:10){ Ass <- matrix(0,nrow=n.birds,ncol=n.birds) for ( i in 1:n.samples ) { #randomise order of individuals in the population for each sampling period samplepop<-sample(population,length(population),replace=FALSE) #create group sizes for that sampling period groupsizes<-round(rdirichlet(1,rep(1,20))*100) #add to/take from random groups until sum(groupsizes)=population size while(sum(groupsizes)!= n.birds){ if(sum(groupsizes)>n.birds){ test<-sample(1:length(groupsizes),1) while(groupsizes[test]==0){ test<-sample(1:length(groupsizes),1) } groupsizes[test]<-groupsizes[test]-1 } if(sum(groupsizes)0){ tmp.groupdata<-cbind(rep(i,groupsizes[j]),rep(j,groupsizes[j]),group) groupdata<-rbind(groupdata,tmp.groupdata) } } Assarr[,,i]<-Ass correlation<-dcorr(Ass) correlations2[i,k]<-correlation } }