This repository contains juypter notebooks for the evaluation of smartphone app-based data collection. It is designed to be launched with binder https://mybinder.org/ so that other community members can run their own analyses without any additional setup.
WARNING As you can see from the binder install
CI,
launching the binder takes ~ 13 seconds. The list of
packages is pretty short, but the conda SAT solver takes a
long time to resolve the dependency graph on the large conda-forge
repo. If the build succeeds in
creating the image, but gets stuck in the "Launching server" step, reloading
the binder page seems to speed things up.
If you do find anything interesting, please consider contributing your notebook so that others can build on it!
Questions? Since this repository is part of a larger project, all issues are tracked in the central docs repository. If you have a question, as suggested by the open source guide, please file an issue instead of sending an email. Since issues are public, other contributors can try to answer the question and benefit from the answer.
There are many potential ways to interact with the notebooks here. At one extreme, you can do everything using browser UI tools only. At the other, you can use the CLI. And of course, there are tons of other git tools to work with. The instructions here can give you a sense of the options, but feel free to adapt them to your favourite tools.
- If you want to write your own code, you may want to start with a template that iterates over the existing data model - https://github.com/MobilityNet/mobilitynet-analysis-scripts/blob/master/Data_exploration_template.ipynb
- If you want to run existing analyses, you can use the SF Bay Area experiments as a template:
- Visualizations from the SF Bay area experiments are in the
timeline_*
files (e.g.timeline_car_scooter_brex_san_jose.ipynb
)
- View only: Notebooks with outputs embedded are in the
examples_with_outputs
folder and can be statically viewed directly in nbviewer (e.g. https://nbviewer.jupyter.org/github/MobilityNet/mobilitynet-analysis-scripts/blob/master/examples_with_outputs/example_visualization_SFBA_first_failed_experiment.ipynb). There are a lot of logs related to data loading and preprocessing at the beginning, so you want to scroll ahead to the results (e.g. https://nbviewer.jupyter.org/github/MobilityNet/mobilitynet-analysis-scripts/blob/master/examples_with_outputs/example_visualization_SFBA_first_failed_experiment.ipynb#Now-for-the-results-(calibration,-phone-view)!) - Interactive, UI-only: Launch the repo in binder and clone one of the example notebooks
- Interactive, CLI only:
- Fork + clone the repo
- Run
setup/setup.sh
to set up the local environment- you may need to install the correct version of miniconda per instructions
- Start a local notebook server (
juypter notebook
)
You can contribute analysis results (easy) or additional data and experiments (more complex but potentially more impactful!)
Please ensure that you contribute cleared notebooks to allow the source control capabilities of GitHub to work well. To clear a notebook, use (Kernel -> Restart & Clear Output).
- UI-only:
- Download the notebook (Download -> ipynb)
- Upload the notebook using the GitHub UI (Upload Files, next to Clone or Download)
- CLI only: Follow the instructions on github - i.e.
- Create a new branch (e.g.
$ git checkout -b
) - Commit the new notebook (e.g.
$ git add
and$ git commit
) - Push and generate pull request
- Create a new branch (e.g.
Please see the detailed instructions in the docs.