Spaces:
Sleeping
Sleeping
File size: 51,999 Bytes
6f00d18 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 |
{
"cells": [
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>in_sf</th>\n",
" <th>beds</th>\n",
" <th>bath</th>\n",
" <th>price</th>\n",
" <th>year_built</th>\n",
" <th>sqft</th>\n",
" <th>price_per_sqft</th>\n",
" <th>elevation</th>\n",
" <th>city</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0</td>\n",
" <td>2.0</td>\n",
" <td>1.0</td>\n",
" <td>999000</td>\n",
" <td>1960</td>\n",
" <td>1000</td>\n",
" <td>999</td>\n",
" <td>10</td>\n",
" <td>NY</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>0</td>\n",
" <td>2.0</td>\n",
" <td>2.0</td>\n",
" <td>2750000</td>\n",
" <td>2006</td>\n",
" <td>1418</td>\n",
" <td>1939</td>\n",
" <td>0</td>\n",
" <td>NY</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>0</td>\n",
" <td>2.0</td>\n",
" <td>2.0</td>\n",
" <td>1350000</td>\n",
" <td>1900</td>\n",
" <td>2150</td>\n",
" <td>628</td>\n",
" <td>9</td>\n",
" <td>NY</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>0</td>\n",
" <td>1.0</td>\n",
" <td>1.0</td>\n",
" <td>629000</td>\n",
" <td>1903</td>\n",
" <td>500</td>\n",
" <td>1258</td>\n",
" <td>9</td>\n",
" <td>NY</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>0</td>\n",
" <td>0.0</td>\n",
" <td>1.0</td>\n",
" <td>439000</td>\n",
" <td>1930</td>\n",
" <td>500</td>\n",
" <td>878</td>\n",
" <td>10</td>\n",
" <td>NY</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" in_sf beds bath price year_built sqft price_per_sqft elevation \\\n",
"0 0 2.0 1.0 999000 1960 1000 999 10 \n",
"1 0 2.0 2.0 2750000 2006 1418 1939 0 \n",
"2 0 2.0 2.0 1350000 1900 2150 628 9 \n",
"3 0 1.0 1.0 629000 1903 500 1258 9 \n",
"4 0 0.0 1.0 439000 1930 500 878 10 \n",
"\n",
" city \n",
"0 NY \n",
"1 NY \n",
"2 NY \n",
"3 NY \n",
"4 NY "
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = pd.read_csv('../data/ny-vs-sf-houses.csv')\n",
"df.head()\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([<Axes: title={'center': 'NY'}>, <Axes: title={'center': 'SF'}>],\n",
" dtype=object)"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.hist('elevation', by='city')"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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AHAN6NatmwICApSXl3fJvv7+/pJ+eFbXj/3mN7/RokWLtHDhQiUnJys2NtbptTobYQcAgGtA27ZtNX36dP32t7/VkiVLdOTIEW3btk3vvvtuk76dOnWSxWLRqlWr9N1336mqqsre9vDDD+ubb77Rn/70Jz366KOtuQstRtgBAOAakZ2draeeekozZsxQr1699OCDD+r48eNN+l1//fWaPXu2fve736ljx46aPHmyvS00NFRpaWkKCgrS6NGjW7H6lmPODgAA1wgfHx8999xzeu6555q0/fi54NnZ2crOzr7gON9++63S09NltVpdUqezEXYAAMBl+f7775Wfn6/8/Hy9/fbb7i7nshF2AADAZenfv7++//57vfjii+rRw3uuMibsAACAy/KvNx/0JkxQBgAApkbYAQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAApsal5wAAeIGSkhJVVFS0yrYiIiIUFxfXKttqDYQdAAA8XElJiXr27KWzZ6tbZXsBAYE6cKDoigLP+PHjtXjxYuXm5up3v/udff3KlSt1//33a8mSJXr88cf1j3/8QzfeeKO9/dixY7rpppv0+9//3uEZXM5E2AEAwMNVVFTo7NlqJT46UyHRnV26LVvpUW1/b7YqKiqu+OxO27Zt9eKLL+qxxx5Tu3btHNoeeeQRrVixQuPHj9emTZvk4/PDTJqJEydq4MCBysjIcNo+/BhhBwAALxES3VnhcZ77mIbk5GQdPnxYubm5mjNnTpP2//zP/9RNN92kuXPn6umnn9aiRYu0ZcsW/fOf/5TFYnFZXUxQBgAATuHr66s//vGPevPNN/XNN980ae/QoYPeeecdZWdna+3atZo2bZpef/11xcbGurQuwg4AAHCa+++/X/369dPMmTMv2D569Gj98pe/VEpKiu68806NGzfO5TURdgAAgFO9+OKLWrx4sYqKii7Ynp2drcbGRj3//POtUg9hBwAAONUdd9yhkSNHKisr64Ltbdq0cfivqzFBGQAAON0LL7ygfv36qUcP90+o5swOAABwuj59+ig9PV1vvPGGu0vhzA4AAN7CVnrUq7aRk5Ojjz76yGnjtRRhBwAADxcREaGAgEBtf292q2wvICBQERERV/SeRYsWNVnXuXNn1dTUXHC9YRgtLe+KEXYAAPBwcXFxOnCgiGdjtZBbw86mTZv00ksv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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import seaborn as sns\n",
"\n",
"fig = sns.histplot(df, x='elevation', hue='city', multiple='stack')\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>in_sf</th>\n",
" <th>beds</th>\n",
" <th>bath</th>\n",
" <th>price</th>\n",
" <th>year_built</th>\n",
" <th>sqft</th>\n",
" <th>price_per_sqft</th>\n",
" <th>elevation</th>\n",
" <th>city</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>0</td>\n",
" <td>1.0</td>\n",
" <td>1.0</td>\n",
" <td>999000</td>\n",
" <td>1982</td>\n",
" <td>784</td>\n",
" <td>1274</td>\n",
" <td>5</td>\n",
" <td>NY</td>\n",
" </tr>\n",
" <tr>\n",
" <th>58</th>\n",
" <td>0</td>\n",
" <td>0.0</td>\n",
" <td>1.0</td>\n",
" <td>775000</td>\n",
" <td>2009</td>\n",
" <td>546</td>\n",
" <td>1419</td>\n",
" <td>6</td>\n",
" <td>NY</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>0</td>\n",
" <td>2.0</td>\n",
" <td>2.0</td>\n",
" <td>3995000</td>\n",
" <td>1906</td>\n",
" <td>2400</td>\n",
" <td>1665</td>\n",
" <td>10</td>\n",
" <td>NY</td>\n",
" </tr>\n",
" <tr>\n",
" <th>439</th>\n",
" <td>1</td>\n",
" <td>3.0</td>\n",
" <td>2.0</td>\n",
" <td>849000</td>\n",
" <td>1947</td>\n",
" <td>1622</td>\n",
" <td>523</td>\n",
" <td>106</td>\n",
" <td>SF</td>\n",
" </tr>\n",
" <tr>\n",
" <th>220</th>\n",
" <td>0</td>\n",
" <td>1.0</td>\n",
" <td>1.0</td>\n",
" <td>529000</td>\n",
" <td>1986</td>\n",
" <td>650</td>\n",
" <td>814</td>\n",
" <td>0</td>\n",
" <td>NY</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" in_sf beds bath price year_built sqft price_per_sqft elevation \\\n",
"11 0 1.0 1.0 999000 1982 784 1274 5 \n",
"58 0 0.0 1.0 775000 2009 546 1419 6 \n",
"44 0 2.0 2.0 3995000 1906 2400 1665 10 \n",
"439 1 3.0 2.0 849000 1947 1622 523 106 \n",
"220 0 1.0 1.0 529000 1986 650 814 0 \n",
"\n",
" city \n",
"11 NY \n",
"58 NY \n",
"44 NY \n",
"439 SF \n",
"220 NY "
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.groupby('city')['price'].mean().round(0)\n",
"\n",
"\n",
"df.sample(n=5)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>a</th>\n",
" <th>b</th>\n",
" <th>c</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>-0.288585</td>\n",
" <td>-1.823887</td>\n",
" <td>-0.930694</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>-2.020028</td>\n",
" <td>0.322731</td>\n",
" <td>1.634198</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>-0.551412</td>\n",
" <td>0.966280</td>\n",
" <td>0.689169</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>0.548931</td>\n",
" <td>-0.416653</td>\n",
" <td>0.088240</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>-1.180181</td>\n",
" <td>-0.218380</td>\n",
" <td>0.350026</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>0.984890</td>\n",
" <td>-0.620657</td>\n",
" <td>0.218497</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>-1.174211</td>\n",
" <td>0.985980</td>\n",
" <td>0.591793</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>-0.461553</td>\n",
" <td>2.075740</td>\n",
" <td>0.371126</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>-1.692228</td>\n",
" <td>1.191046</td>\n",
" <td>0.863126</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>-0.354696</td>\n",
" <td>-0.853733</td>\n",
" <td>1.799386</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>1.165250</td>\n",
" <td>2.035038</td>\n",
" <td>-0.953814</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>-0.899864</td>\n",
" <td>-0.469766</td>\n",
" <td>0.531577</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>-0.608545</td>\n",
" <td>-0.576878</td>\n",
" <td>0.674811</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>-1.193892</td>\n",
" <td>-0.498491</td>\n",
" <td>-2.542653</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>-1.729489</td>\n",
" <td>0.637867</td>\n",
" <td>-1.093362</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>-0.994024</td>\n",
" <td>-0.714704</td>\n",
" <td>-0.166540</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>0.098802</td>\n",
" <td>1.637319</td>\n",
" <td>0.922935</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>1.326211</td>\n",
" <td>0.282339</td>\n",
" <td>1.709445</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>-0.955390</td>\n",
" <td>1.292335</td>\n",
" <td>-0.140798</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>0.019700</td>\n",
" <td>-2.386171</td>\n",
" <td>-0.452989</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" a b c\n",
"0 -0.288585 -1.823887 -0.930694\n",
"1 -2.020028 0.322731 1.634198\n",
"2 -0.551412 0.966280 0.689169\n",
"3 0.548931 -0.416653 0.088240\n",
"4 -1.180181 -0.218380 0.350026\n",
"5 0.984890 -0.620657 0.218497\n",
"6 -1.174211 0.985980 0.591793\n",
"7 -0.461553 2.075740 0.371126\n",
"8 -1.692228 1.191046 0.863126\n",
"9 -0.354696 -0.853733 1.799386\n",
"10 1.165250 2.035038 -0.953814\n",
"11 -0.899864 -0.469766 0.531577\n",
"12 -0.608545 -0.576878 0.674811\n",
"13 -1.193892 -0.498491 -2.542653\n",
"14 -1.729489 0.637867 -1.093362\n",
"15 -0.994024 -0.714704 -0.166540\n",
"16 0.098802 1.637319 0.922935\n",
"17 1.326211 0.282339 1.709445\n",
"18 -0.955390 1.292335 -0.140798\n",
"19 0.019700 -2.386171 -0.452989"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import numpy as np\n",
"chart_data = pd.DataFrame(np.random.randn(20, 3), columns=[\"a\", \"b\", \"c\"])\n",
"chart_data"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "base",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
|