|
21 | 21 | "\n", |
22 | 22 | "###Indicators from this csv\n", |
23 | 23 | "* resrehab\n", |
| 24 | + "* comprop (from MDProperty View)\n", |
24 | 25 | "* crehab (calculate ComProp first)\n", |
25 | 26 | "* demper\n", |
26 | 27 | "* constper\n", |
|
47 | 48 | "metadata": { |
48 | 49 | "id": "nZKiwlSyQmY2" |
49 | 50 | }, |
50 | | - "execution_count": null, |
| 51 | + "execution_count": 1, |
51 | 52 | "outputs": [] |
52 | 53 | }, |
53 | 54 | { |
|
63 | 64 | "permits = pd.read_excel(\"Permits_2021v2_CSACity.xlsx\")\n", |
64 | 65 | "totalRes_2021 = pd.read_csv(\"totalRes_2021.csv\")\n", |
65 | 66 | "mdProp = pd.read_csv(\"MDPropertyView_2021_CSACity.csv\")\n", |
66 | | - "crosswalk = pd.read_csv('https://raw.githubusercontent.com/BNIA/VitalSigns/main/CSA_2010_and_2020.csv')\n", |
| 67 | + "crosswalk = pd.read_csv('https://raw.githubusercontent.com/BNIA/VitalSigns/main/CSA2010_2020.csv')\n", |
67 | 68 | "\n", |
68 | 69 | "\n", |
69 | 70 | "\n", |
70 | 71 | "#Remove rows where BaltCity is empty\n", |
71 | 72 | "permits = permits[permits['BaltCity'] != '']\n", |
72 | | - "mdProp = mdProp[mdProp['BaltCity'] != '']\n", |
73 | | - "\n", |
74 | | - "#Keep necessary columns from crosswalk table\n", |
75 | | - "crosswalk = crosswalk[['CSA2010', 'CSA2020']]\n", |
76 | | - "#Remove duplicate rows.\n", |
77 | | - "crosswalk = crosswalk.drop_duplicates()" |
| 73 | + "mdProp = mdProp[mdProp['BaltCity'] != '']" |
78 | 74 | ] |
79 | 75 | }, |
80 | 76 | { |
|
135 | 131 | "execution_count": null, |
136 | 132 | "outputs": [] |
137 | 133 | }, |
138 | | - { |
139 | | - "cell_type": "markdown", |
140 | | - "source": [ |
141 | | - "###crehab" |
142 | | - ], |
143 | | - "metadata": { |
144 | | - "id": "TJV0dhzF2Ks5" |
145 | | - } |
146 | | - }, |
147 | 134 | { |
148 | 135 | "cell_type": "markdown", |
149 | 136 | "source": [ |
|
157 | 144 | "cell_type": "code", |
158 | 145 | "source": [ |
159 | 146 | "#export\n", |
160 | | - "#comprop - denominator used for crehab indicator.\n", |
| 147 | + "#comprop Indicator\n", |
| 148 | + "#Output - Total Number of Commercial Properties\n", |
161 | 149 | "\n", |
162 | 150 | "#Filter data\n", |
163 | 151 | "comprop = mdProp[mdProp['LU'].isin(['C','EC','I'])]\n", |
|
166 | 154 | "comprop = comprop[['CSA']]\n", |
167 | 155 | "\n", |
168 | 156 | "#Add counter\n", |
169 | | - "comprop['comprop'] = 1\n", |
| 157 | + "comprop['compropXX'] = 1\n", |
170 | 158 | "\n", |
171 | 159 | "#Group by CSAs\n", |
172 | 160 | "comprop = comprop.groupby('CSA').sum(numeric_only=True) \n", |
|
178 | 166 | "comprop = comprop.rename(columns={'CSA': 'CSA2010'})\n", |
179 | 167 | "\n", |
180 | 168 | "#Add Baltimore City row\n", |
181 | | - "comprop.loc[len(comprop.index)] = ['Baltimore City', comprop['comprop'].sum()]\n", |
| 169 | + "comprop.loc[len(comprop.index)] = ['Baltimore City', comprop['compropXX'].sum()]\n", |
182 | 170 | "\n", |
183 | 171 | "#Append 2020 CSA names\n", |
184 | 172 | "comprop = comprop.merge(crosswalk, on='CSA2010', how='inner')\n", |
185 | 173 | "\n", |
| 174 | + "#Change column order to clean things up.\n", |
| 175 | + "comprop = comprop[['CSA2010', 'CSA2020', 'compropXX']]\n", |
| 176 | + "\n", |
186 | 177 | "comprop" |
187 | 178 | ], |
188 | 179 | "metadata": { |
|
191 | 182 | "execution_count": null, |
192 | 183 | "outputs": [] |
193 | 184 | }, |
| 185 | + { |
| 186 | + "cell_type": "markdown", |
| 187 | + "source": [ |
| 188 | + "###crehab (Requires comprop table)" |
| 189 | + ], |
| 190 | + "metadata": { |
| 191 | + "id": "TJV0dhzF2Ks5" |
| 192 | + } |
| 193 | + }, |
194 | 194 | { |
195 | 195 | "cell_type": "code", |
196 | 196 | "source": [ |
|
225 | 225 | "crehab = crehab.merge(comprop, on='CSA2020', how='inner')\n", |
226 | 226 | "\n", |
227 | 227 | "#calculate indicator\n", |
228 | | - "crehab['crehabXX'] = (crehab['permit_count']/ crehab['comprop']) *100\n", |
| 228 | + "crehab['crehabXX'] = (crehab['permit_count']/ crehab['compropXX']) *100\n", |
229 | 229 | "\n", |
230 | 230 | "#Sort rows alphabetically \n", |
231 | 231 | "crehab = crehab.sort_values('CSA2010')\n", |
232 | 232 | "\n", |
233 | 233 | "#Change column order to clean things up.\n", |
234 | | - "crehab = crehab[['CSA2010', 'CSA2020', 'permit_count', 'comprop', 'crehabXX']]\n", |
| 234 | + "crehab = crehab[['CSA2010', 'CSA2020', 'permit_count', 'compropXX', 'crehabXX']]\n", |
235 | 235 | "\n", |
236 | 236 | "crehab" |
237 | 237 | ], |
|
355 | 355 | "cell_type": "code", |
356 | 356 | "source": [ |
357 | 357 | "from google.colab import files \n", |
358 | | - "resrehab.to_csv('resrehab_2021.csv')\n", |
359 | | - "files.download('resrehab_2021.csv')" |
| 358 | + "comprop.to_csv('comprop_2021.csv')\n", |
| 359 | + "files.download('comprop_2021.csv')" |
360 | 360 | ], |
361 | 361 | "metadata": { |
362 | 362 | "colab": { |
363 | 363 | "base_uri": "https://localhost:8080/", |
364 | 364 | "height": 17 |
365 | 365 | }, |
366 | 366 | "id": "aXo0GBgNvISA", |
367 | | - "outputId": "53ee29d3-dda5-4550-a630-ae43c878d41b" |
| 367 | + "outputId": "e06acbbe-6238-47e1-c0e7-ba3a493e86f8" |
368 | 368 | }, |
369 | | - "execution_count": null, |
| 369 | + "execution_count": 6, |
370 | 370 | "outputs": [ |
371 | 371 | { |
372 | 372 | "output_type": "display_data", |
|
427 | 427 | "<IPython.core.display.Javascript object>" |
428 | 428 | ], |
429 | 429 | "application/javascript": [ |
430 | | - "download(\"download_f8d9169f-811c-40f1-98e1-0de697de8f4d\", \"resrehab_2021.csv\", 4069)" |
| 430 | + "download(\"download_461824f6-800a-4f75-b097-5d30f3fff5ac\", \"comprop_2021.csv\", 2756)" |
431 | 431 | ] |
432 | 432 | }, |
433 | 433 | "metadata": {} |
|
0 commit comments