From 1739e9f5706bb8a73de5dbf0b467de49ea040898 Mon Sep 17 00:00:00 2001 From: Ben Green Date: Mon, 8 Jun 2015 15:21:51 -0400 Subject: added my R scripts --- R Scripts/-generate-dag-dat-sim.R | 50 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100755 R Scripts/-generate-dag-dat-sim.R (limited to 'R Scripts/-generate-dag-dat-sim.R') diff --git a/R Scripts/-generate-dag-dat-sim.R b/R Scripts/-generate-dag-dat-sim.R new file mode 100755 index 0000000..a6d115d --- /dev/null +++ b/R Scripts/-generate-dag-dat-sim.R @@ -0,0 +1,50 @@ +library(igraph) +setwd("/Users/Ben/Documents/Harvard/Fall 2014/CS 284r Social Data Mining/Cascade Project/") +load('Data/lcc_sim2a.RData') + +# d = remove.edge.attribute(person,'weight') +# lcc = induced.subgraph(d,which(clusters(d)$membership==which.max(clusters(d)$csize))) +# vic_ids = which(V(lcc)$vic==TRUE) +# dag = graph.empty(vcount(lcc)) +# dag = set.edge.attribute(dag,'weight',value=0) + +lcc = lcc.sim +vic_ids = vic_ids.sim +ei = 1 + +dag_dat = matrix(0,253096,5) +for (1 in 1:length(vic_ids)){ + if (i %% 100)==0) print(which(vic_ids==u)) + + u = vic_ids[i] + nbhd = unlist(neighborhood(lcc, nodes=u, order=3)) # get nodes within neighborhood + nbhd = intersect(vic_ids,nbhd) # only want victim nodes + nbhd = setdiff(nbhd,u) # don't want to include u in the neighborhood + + tu = as.numeric(V(lcc)$vic_date[u]) + tvs = as.numeric(V(lcc)$vic_date[nbhd]) + Es = tu0){ + nbhd = nbhd[Es] + dists = as.numeric(shortest.paths(lcc,u,nbhd)) + + for (j in 1:sum(Es)){ + v = nbhd[j] + d = dists[j] + tv = tvs[j] +# dag_dat[ei,] = c(u,v,d,tu,tv) + dag_dat = rbind(dag_dat,c(u,v,d,tu,tv)) +# f = time(tu,tv) +# h = structural(d) +# weight[ei] = f*h + ei = ei+1 + } + } +} + +dag_dat = dag_dat[rowSums(dag_dat)>0,] +dag_dat = as.data.frame(dag_dat) +colnames(dag_dat) = c('from','to','dist','t1','t2') +# save(dag_dat,file='Data/dag_dat_sim2a.RData') -- cgit v1.2.3-70-g09d2