In prior lessons we have used census data to inform decision-making in business scenarios. The contemporary data that we use is often depicted as unbiased and neutral. However, those data often reflect direct prior interventions. In the case of all geographic data in the United State, our present reality has been shaped by active policy interventions that have led to residential segregation. One such policy intervention is the use of ‘residential security maps’ to determine which neighborhoods would be granted government- backed low interest rate mortgages. These maps were used explicitly to exclude neighborhoods with high African American representation from receiving government investment. Those neighborhoods, were marked in red, and the practice has become known as redlining. All of the non-python readings linked in this HW are entirely option (i.e. not required).
(https://www.smartcitiesdive.com/ex/sustainablecitiescollective/short-history-redlining/1162160/)
In today’s homework we will examine the original redlining map of Detroit as we practice the following technical skills:
• Working with text files
• Parsing new JSON files
• General python skills including list comprehensions, dictionaries etc.
This is the first hw/project for which we are not providing starter code. Instead we will provide a series of instructions that you should follow.
Step 1: Using the python methods we used in class obtain the json file located at:
https://dsl.richmond.edu/panorama/redlining/static/downloads/geojson/MIDetroit193 9.geojson
and deserialize it into a usable python object named RedliningData
This was previewed in the Week 4 & 5 Lab activities. Please refer to that video if you are having trouble
Background The json is digitized version of the original dataset used in 1936. The file divides
Detroit into 238 districts. Each district has a set of latitude and longitude coordinates, a letter grade (A, B, C, or D), and a text description of the demographics of the neighborhoods. The district grades are associated with the following colors and designations: green for the “Best,” blue for “Still Desirable,” yellow for “Definitely Declining,” and red for “Hazardous.” These grades were determined primarily by the racial composition of the districts (https://www.esri.com/arcgis-blog/products/arcgis- livingatlas/announcements/redlining-data-now-in-arcgis-living-atlas/)
Content warning – the text descriptions are from 1936 and may contain offensive language and ideas. Reading each those text descriptions is NOT needed for this assignment.
Step 2:
• Develop a mental map of the data structure of the redlining data. (is it a list of dictionaries? What is the structure of the values for each key in the dictionary etc)
o This is previewed in the consolidation lecture recording from week 6
• Define a class called DetroitDistrict
o This class should have the following attributes
"Coordinates": a list of lists of coordinates from the json file for each district
• Note that some districts are non-contiguous, which may effect the structure of this attribute
"HolcGrade": a string with the letter Grade from the redlining data for each district
“HolcColor”: a string with the appropriate color for each district based on the instructions below
• Districts with grade A should be assigned the color ‘darkgreen’
• Districts with grade B should be assigned the color ‘cornflowerblue’
• Districts with grade C should be assigned the color ‘gold’
• Districts with grade D should be assigned the color ‘maroon’
"name": a string or integer with a name of the district. This is up to you, you might use a number or other iterator, or you may extract a neighborhood name from the qualitative portion in the redlining data
“Qualitative Description”: a string with the text description called Section 8 for each district.
RandomLat: A random latitude point within the district (this should be empty for now, we will need a later step to do this)
RandomLong: A random Longitude point within the district (this is not available from the JSON and will be filled in in a later step)
Median Income: Median 2020 household Income at the random lat/long in that district (filled in later)
CensusTract: A code for the census for the Tract that contains the point defined by RandomLat & RandomLong
• Use a list comprehension to create 238 objects of the class DetroitDistrict from the redlining data in a list called Districts
o Note that these must be created in the order they are present in the redlining data
Step 3. One of the learning objectives of this course is to be able to use black-box workflows that you are not immediately familiar with. This will be a critical skill in later courses in your program as well as in your careers. In line with this objective, you will be asked to use the following code in order to produce a redlining map of Detroit.
CS 340 Milestone One Guidelines and Rubric Overview: For this assignment, you will implement the fundamental operations of create, read, update,
Retail Transaction Programming Project Project Requirements: Develop a program to emulate a purchase transaction at a retail store. This
7COM1028 Secure Systems Programming Referral Coursework: Secure
Create a GUI program that:Accepts the following from a user:Item NameItem QuantityItem PriceAllows the user to create a file to store the sales receip
CS 340 Final Project Guidelines and Rubric Overview The final project will encompass developing a web service using a software stack and impleme