# Assortment on continuous vertex values

### Description

Calculates the assortativity coefficient for weighted and unweighted graphs with numerical vertex values

### Usage

1 | ```
assortment.continuous(graph, vertex_values, weighted = TRUE, SE = FALSE, M = 1)
``` |

### Arguments

`graph` |
A Adjacency matrix, as an N x N matrix. Can be weighted or binary. |

`vertex_values` |
Values on which to calculate assortment, vector of N numbers |

`weighted` |
Flag: TRUE to use weighted edges, FALSE to turn edges into binary (even if weights are given) |

`SE` |
Calculate standard error using the Jackknife method. |

`M` |
Binning value for Jackknife, where M edges are removed rather than single edges. This helps speed up the estimate for large networks with many edges. |

### Value

This function returns a named list, with two elements:

$r the assortativity coefficient $SE the standard error

### Author(s)

Damien Farine dfarine@orn.mpg.de

### References

Newman (2003) Mixing patterns in networks. Physical Review E (67) Farine, D.R. (2014) Measuring phenotypic assortment in animal social networks: weighted associations are more robust than binary edges. Animal Behaviour 89: 141-153.

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | ```
# DIRECTED NETWORK EXAMPLE
# Create a random directed network
N <- 20
dyads <- expand.grid(ID1=1:20,ID2=1:20)
dyads <- dyads[which(dyads$ID1 != dyads$ID2),]
weights <- rbeta(nrow(dyads),1,15)
network <- matrix(0, nrow=N, ncol=N)
network[cbind(dyads$ID1,dyads$ID2)] <- weights
# Create random continues trait values
traits <- rnorm(N)
# Test for assortment as binary network
assortment.continuous(network,traits,weighted=FALSE)
# Test for assortment as weighted network
assortment.continuous(network,traits,weighted=TRUE)
# UNDIRECTED NETWORK EXAMPLE
# Create a random undirected network
N <- 20
dyads <- expand.grid(ID1=1:20,ID2=1:20)
dyads <- dyads[which(dyads$ID1 < dyads$ID2),]
weights <- rbeta(nrow(dyads),1,15)
network <- matrix(0, nrow=N, ncol=N)
network[cbind(dyads$ID1,dyads$ID2)] <- weights
network[cbind(dyads$ID2,dyads$ID1)] <- weights
# Create random continues trait values
traits <- rnorm(N)
# Test for assortment as binary network
assortment.continuous(network,traits,weighted=FALSE)
# Test for assortment as weighted network
assortment.continuous(network,traits,weighted=TRUE)
``` |