Skip to content

CS Concepts

ccai-cmap edited this page Jul 22, 2025 · 12 revisions

Explanations of the theory behind this repository.

Packages

The scripts in this repository depend on many built-in Python packages.

  • Argparse: a package which provides functionality for reading arguments from the command line. Here is a tutorial which will provide everything that you need to know. (To be honest, I know only the very basics.)
  • Pandas: a package for data analysis, or should I say THE package for data analysis. Here is a cheat sheet for working with pandas. You do not need SAS if you have pandas. However, pandas is NOT a catch-all for everything! Keep your for loops and pandas dataframes separate for the best functionality (combining them leads to poor performance.)
  • NetworkX: a package for working with graphs. You do not need to write your own shortest path algorithms! NetworkX has you covered.

Database Concepts

Object-Oriented Principles

The modules in this repository are classes, which is a way to group together related variables (attributes) and functions (methods). The reason they are classes rather than functions is because the objects which are created will change state.

Clone this wiki locally