The course is a concentrated 5-days course (8:30-17:30 daily). The course is dynamic and adapted to students’ needs as much as possible. Course material and topics may vary from what is currently written and the topics will be taught one after another. Here is the plan (which will likely change):
The only prerequisite is knowledge in programming (preferably in R, which is the language we will use). The course is general but examples and some theory are more focused on ecology. An introduction to ecology course is recommended, but not required. Knowledge in linear algebra is recommended, but not required.
Official Syllabus: https://ecomplab.com/network_course/
The goal of a project is to provide you with real-life experience on how to use network in research. You are encouraged to select a project that will advance your own research. Consult with me during the course. Do not wait for the last moment if you need to discuss! See project page.
Project presentations are in a conference style:
I will evaluate the presentations according to: - Slides - Keeping time - Flow & clarity of storytelling - Definition of gaps and goals - Methodology - Results - Answering questions
Submit the presentations and the final reports by email to Shai. Please note the deadlines.
See full guidelines and requirements in the Paper discussion page.
This is a small, intimate and dynamics course. The only way it works is if everyone participates actively. I expect you to participate in class and in the exercises. I will evaluate your participation based on your presence and engagement in class and exercises, and especially during the paper discussions.
You should come ready woith a laptop with R and RStudio installed. In addition, you can use this code to install all the relevant packages for the course. You can run it in R or RStudio. If you have any problem with the installation, we will help you in the first day, but please try to come prepared!
pkgs <- c(
"RColorBrewer",
"bipartite",
"blockmodels",
"devtools",
"dplyr",
"ggalluvial",
"ggnetwork",
"ggplot2",
"ggrepel",
"igraph",
"magrittr",
"maxnodf",
"network",
"networkD3",
"readxl",
"scales",
"tidyverse",
"vegan"
)
install_missing <- function(pkgs) {
pkgs <- unique(pkgs)
missing <- pkgs[!vapply(pkgs, requireNamespace, logical(1), quietly = TRUE)]
if (length(missing) == 0) {
message("All packages are already installed.")
return(invisible(TRUE))
}
message("Installing missing packages from CRAN: ", paste(missing, collapse = ", "))
ok <- character(0)
failed <- character(0)
for (p in missing) {
tryCatch({
install.packages(p, dependencies = TRUE)
if (requireNamespace(p, quietly = TRUE)) ok <- c(ok, p) else failed <- c(failed, p)
}, error = function(e) {
failed <<- c(failed, p)
})
}
if (length(ok)) message("Installed: ", paste(ok, collapse = ", "))
if (length(failed)) {
message("Could not install (not on CRAN / other issue): ", paste(failed, collapse = ", "))
message("If needed, install these manually (e.g., from GitHub) after checking the package docs.")
}
invisible(list(installed = ok, failed = failed))
}
install_missing(pkgs)
# Install EMLN
package.list=c("tidyverse", "magrittr","igraph","Matrix","DT","hablar","devtools")
loaded <- package.list %in% .packages()
package.list <- package.list[!loaded]
installed <- package.list %in% .packages(TRUE)
if (!all(installed)) install.packages(package.list[!installed],repos="http://cran.rstudio.com/")
devtools::install_github('Ecological-Complexity-Lab/emln', force=T)
library(emln)
# Install infomapecology
package.list=c("attempt", "cowplot", "igraph", "ggalluvial","magrittr","vegan", "dplyr","readr","ggplot2","stringr","tibble","tidyr","rlang","bipartite","tidyverse", "Matrix","DT","hablar","devtools")
loaded <- package.list %in% .packages()
package.list <- package.list[!loaded]
installed <- package.list %in% .packages(TRUE)
if (!all(installed)) install.packages(package.list[!installed], repos="http://cran.rstudio.com/")
devtools::install_github('Ecological-Complexity-Lab/infomap_ecology_package', force=T)
library(infomapecology)
# install MuxViz
devtools::install_github("manlius/muxViz")
