General Analysis
Complex systems: https://bingweb.binghamton.edu/~sayama/textbook/.
Network science: https://bingweb.binghamton.edu/~sayama/SSIE641/.
Optimization: https://algorithmsbook.com/optimization/.
Statistics: https://stats.oarc.ucla.edu/other/dae/
R
Networks:
Primary: https://igraph.org/r/
Exponential random graph models: ergm (part of statnet)
This book is very helpful for understanding the dependency models that are closely associated with ERGM analysis in sociology and related disciplines.
Network data sets: http://networkdata.schochastics.net/, http://konect.cc/, http://www.ecologia.ib.usp.br/iwdb/resources.html, https://snap.stanford.edu/data/index.html, http://www.sociopatterns.org/, https://cran.r-project.org/package=igraphdata
Principle component analysis tools (and more): http://www.sthda.com/english/
Regression (in addition to base R; see below):
Data visualization: base R (see below).
Parallel processing: See this blog post for an introduction.
Documentation for the core R packages can be found here; this is the documentation for R’s equivalent of a standard library. These packages include the “base” packages (statistics, sample data sets, graphics, language utilities, but also parallel) and the “recommended” packages (e.g., boot, nlme, and survival). The core R packages are thorough: many tasks for which there are specialized packages are already well-supported in the base and recommended packages. The primary challenge with these core packages is that the documentation can be difficult, and there can be a greater expectation for general programming knowledge. For example, anonymous functions make the
apply
family of functions, includinglapply
andtapply
, very useful, but take some adjustment on the part of the user. For some good pointers, see https://jozef.io/categories/rcase4base/; thereshape
function can be particularly tough, but this is a good guide.
Julia
Manual: https://docs.julialang.org/en/v1/. Includes discussion on improving performance, multithreading, class/type management, and more.
Numerical integration and simulations: https://diffeq.sciml.ai/dev/index.html
Networks: https://juliagraphs.org/Graphs.jl/dev/
Statistics: https://juliastats.org/
Data visualization: https://docs.juliaplots.org/stable/
Python
Networks:
Primary: https://networkx.org/
Exponential random graph models: https://nemtropy.readthedocs.io/en/master/ (this package is new to me, but I have been looking for an alternate open source ERGM implementation and this may be it)
Analysis support:
Numbers, arrays, calculations, vectorizing: https://numpy.org/
Distributions, more calculations, curve fitting, etc.: https://scipy.org/
Data manipulation: https://pandas.pydata.org/
Statistics: https://www.statsmodels.org/stable/index.html
Data visualization: https://matplotlib.org/
Video and Audio Annotation, Support
Video annotation (for behavioral coding, etc.): https://archive.mpi.nl/tla/elan
Audio editing, analysis, etc.: https://www.audacityteam.org/
File conversion, etc.: https://ffmpeg.org/
Supporting Tasks
LaTeX:
Introduction and reference: https://en.wikibooks.org/wiki/LaTeX
For help with symbols: http://detexify.kirelabs.org/classify.html
For collaboration, use latexdiff for tracking changes (command line use:
latexdiff originalfile.tex updatedfile.tex > diff.tex
)
PDFs:
Emacs
Org Mode (notes, task scheduler/tracker, etc.): https://orgmode.org/
ESS (IDE for R and Julia): https://ess.r-project.org/
Magit (git “porcelain”, for GitHub interaction): https://magit.vc/
MELPA (package manager): https://melpa.org/#/
Visualization
Color model: https://www.sessions.edu/color-calculator/
Palette starter: https://encycolorpedia.com/