City Score is a command-line application for scoring cities based on your personal preferences. Here's an example:
City | Population | Zillow® ZHVI | PeopleForBikes | Yelp "gay bars" | Nearby ski resorts | Score |
---|---|---|---|---|---|---|
Portland, OR | 647,176 | $547,999 | 56 | 9 | Mount Hood Ski Bowl (42 miles) and 2 more | 100 |
Detroit, MI | 645,658 | $64,414 | 42 | 7 | Mt Brighton, MI (41 miles) and 1 more | 86 |
Cambridge, MA | 116,892 | $959,032 | 58 | 6 | Wachusett Mountain (40 miles) and 5 more | 84 |
City Score uses a three-step process:
$ python3 -m pip install city_score
Create a script (myscore.py
) like this:
from city_score import run
from city_score.sources.core import *
from city_score.sources.peopleforbikes import *
from city_score.sources.zillow import *
sources = (
PeopleForBikes,
Zillow,
)
criteria = (
minimum_bike_score(25),
minimum_population(60000),
maximum_median_home_price(1000000),
prohibited_states(('TX', 'FL', 'CO', )),
)
scorers = (
median_home_price_scorer(lower=350000, upper=800000),
bike_score_scorer(lower=40, upper=80, weight=2),
)
dimensions = (
population,
median_home_price,
median_rent,
bike_score,
)
run(sources, criteria, scorers, dimensions)
$ python3 myscore.py --sort=score --scale-scores
MIT License