One of the most important signals in Uber's system is demand. It's used in a variety of capacities, from calculating dynamic (surge) pricing to making decisions about the number of drivers needed to keep the system running smoothly. One of the ways Uber quantifies demand is by tracking when users open the Uber app on their phones.
This service predicts future demand based on historical data.
Setup:
- Install MayaVi:
- Grab VTK and wxPython:
apt-get python-vtk python-wxgtk2.8 (debian/ubuntu)
yum install vtk-python wxPython-devel (centos/rhel)
- On Centos, mayavi works better if you install it from yum:
yum install Mayavi
Otherwise, just use pip:
pip install wxpython mayavi
-
Install requirements.txt
pip install -r requirements.txt
-
Start redis:
redis-server
and run the celery worker with:
celery worker --app=tasks --loglevel=info
You're ready to run!
python main.py