blob: f1409af016f5a7a909aefb0b59cb1c1e083a04af (
plain)
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
|
library(igraph)
setwd("/Users/Ben/Documents/Harvard/Fall 2014/CS 284r Social Data Mining/Cascade Project/")
load('Data/dag_dat.RData')
load('Data/lcc.RData')
n.infections = length(vic_ids)
n.nodes = (vcount(lcc))
n.days = as.numeric(max(dag_dat$t2) - min(dag_dat$t1))
gamma = n.infections/(n.nodes*n.days)
vic = rep(FALSE,n.nodes)
for(t in 1:n.days){
if (t%%1000==0) print(t)
infections = which(runif(n.nodes)<gamma)
new.infections = infections[vic[infections]==0]
vic[new.infections] = t
}
lcc.sim = lcc
V(lcc.sim)$vic = vic>0
V(lcc.sim)$vic_date = vic
vic_ids.sim = which(vic>0)
# save(lcc.sim,vic_ids.sim, file='Data/lcc_sim1b.RData')
#### simulation method 2 ####
load('Data/dag_dat.RData')
load('Data/lcc.RData')
n.infections = length(vic_ids)
n.days = as.numeric(max(dag_dat$t2) - min(dag_dat$t1))
lcc.sim = lcc
V(lcc.sim)$vic_date[vic_ids] = sample(n.days, n.infections, replace=TRUE)
vic_ids.sim = which(V(lcc.sim)$vic)
# save(lcc.sim, vic_ids.sim, file='Data/lcc_sim2a.RData')
|