Minneapolis police report stops and other incidents by neighborhood, so I decided to calculate the racial makeup of those neighborhoods to make some comparisons — along the lines of what I've already done for New York, Chicago, and Washington, DC.
This time, though, I'm using Datasette.
I've seen creator Simon Willison tweet about Datasette, and with some extra time on my hands I took a look. It's so impressive!
With Datasette, one can publish data online easily, efficiently (even free!) and in a way that allows others to explore the data themselves using SQL and feed data visualizations and apps. At scale.
How is this not in every newsroom?
(Simon, by the way, has offered to help any newsroom interested in using Datasette — an offer I hope to take him up on someday.)
Once again, I've married US Census blocks with other municipal zones, this time the official neighborhood map of Minneapolis.
That data is now online, served up with Datasette.
And with some nifty SQL queries, bookmarked as simple links, I can list the race and ethnic makeup of every neighborhood by raw number.
Or by percentage.
I've also posted other data from the Minneapolis open data portal, including police stops and use of force. Explore away!
For example, here's the racial breakdown of the population of the Powderhorn Park neighborhood, near where George Floyd was killed, and here's the racial and ethnic breakdown of police stops in that neighborhood. Aside from the fact 43% of the stops are of people whose race is "unknown" or not noted, Black people are stopped at twice the rate of white people, even though there are four times as many white people as Black people there.
Since each Datasette query has a long cache assigned to it, y'all should be able to hit it a zillion times and it'll work just fine. And you can download any table or query result as a CSV or JSON file. And the databases themselves can be downloaded, too.
Building my data library
I've turned the CSVs from my previous precinct-population posts into databases for each city for you to mine and query.
It just makes sense to have my shared data in one spot. And because it's driven by code on my own computer — and uploaded as a Docker image — if the hosting service decides to shut it all down (as Google did with Fusion Tables), I can easily move it elsewhere.
A lot is possible
If you want to explore the power of Datasette on something very simple, check out Simon's post about how much you can do with a simple table of just two columns. They list every GOP member of the US Congress and the accounts they follow on Twitter. Simon shows how a little SQL gets you a lot of information!
And if you use these data sets with Datasette for your own projects, I'd love to hear about them.