{"id":20760037,"url":"https://github.com/dexplo/pandas_cub","last_synced_at":"2025-08-13T05:04:17.942Z","repository":{"id":57450413,"uuid":"169688644","full_name":"dexplo/pandas_cub","owner":"dexplo","description":null,"archived":false,"fork":false,"pushed_at":"2019-02-09T23:11:45.000Z","size":85,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-06T00:53:27.589Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dexplo.png","metadata":{"files":{"readme":"README.ipynb","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-02-08T05:17:13.000Z","updated_at":"2021-04-03T04:16:24.000Z","dependencies_parsed_at":"2022-08-25T23:00:55.503Z","dependency_job_id":null,"html_url":"https://github.com/dexplo/pandas_cub","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dexplo/pandas_cub","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dexplo%2Fpandas_cub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dexplo%2Fpandas_cub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dexplo%2Fpandas_cub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dexplo%2Fpandas_cub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dexplo","download_url":"https://codeload.github.com/dexplo/pandas_cub/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dexplo%2Fpandas_cub/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270183606,"owners_count":24541341,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-13T02:00:09.904Z","response_time":66,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-17T10:10:22.255Z","updated_at":"2025-08-13T05:04:17.886Z","avatar_url":"https://github.com/dexplo.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"# How to use pandas_cub\\n\",\n    \"\\n\",\n    \"The README.ipynb notebook will serve as the documentation and usage guide to pandas_cub.\\n\",\n    \"\\n\",\n    \"## Installation\\n\",\n    \"\\n\",\n    \"`pip install pandas-cub`\\n\",\n    \"\\n\",\n    \"## What is pandas_cub?\\n\",\n    \"pandas_cub is a simple data analysis library that emulates the functionality of the pandas library. The library is not meant for serious work. It was built as an assignment for one of Ted Petrou's Python classes. If you would like to complete the assignment on your own, visit [this repository][1]. There are about 40 steps and 100 tests that you must pass in order to rebuild the library. It is a good challenge and teaches you the fundamentals of how to build your own data analysis library.\\n\",\n    \"\\n\",\n    \"## pandas_cub functionality\\n\",\n    \"\\n\",\n    \"pandas_cub has limited functionality but is still capable of a wide variety of data analysis tasks.\\n\",\n    \"\\n\",\n    \"* Subset selection with the brackets\\n\",\n    \"* Arithmetic and comparison operators (+, -, \u003c, !=, etc...)\\n\",\n    \"* Aggregation of columns with most of the common functions (min, max, mean, median, etc...)\\n\",\n    \"* Grouping via pivot tables\\n\",\n    \"* String-only methods for columns containing strings\\n\",\n    \"* Reading in simple comma-separated value files\\n\",\n    \"* Several other methods\\n\",\n    \"\\n\",\n    \"\\n\",\n    \"## pandas_cub DataFrame\\n\",\n    \"\\n\",\n    \"pandas_cub has a single main object, the DataFrame, to hold all of the data. The DataFrame is capable of holding 4 data types - booleans, integers, floats, and strings. All data is stored in NumPy arrays. panda_cub DataFrames have no index (as in pandas). The columns must be strings.\\n\",\n    \"\\n\",\n    \"### Missing value representation\\n\",\n    \"Boolean and integer columns will have no missing value representation. The NumPy NaN is used for float columns and the Python None is used for string columns.\\n\",\n    \"\\n\",\n    \"## Code Examples\\n\",\n    \"\\n\",\n    \"pandas_cub syntax is very similar to pandas, but implements much fewer methods. The below examples will cover just about all of the API.\\n\",\n    \"\\n\",\n    \"[1]: https://github.com/tdpetrou/pandas_cub\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### Reading data with `read_csv`\\n\",\n    \"\\n\",\n    \"pandas_cub consists of a single function, `read_csv`, that has a single parameter, the location of the file you would like to read in as a DataFrame. This function can only handle simple CSV's and the delimiter must be a comma. A sample employee dataset is provided in the data directory. Notice that the visual output of the DataFrame is nearly identical to that of a pandas DataFrame. The `head` method returns the first 5 rows by default.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 1,\n   \"metadata\": {},\n   \"outputs\": [],\n   \"source\": [\n    \"import pandas_cub as pdc\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 2,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edept      \u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115ad1d0\u003e\"\n      ]\n     },\n     \"execution_count\": 2,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df = pdc.read_csv('data/employee.csv')\\n\",\n    \"df.head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### DataFrame properties\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"The `shape` property returns a tuple of the number of rows and columns\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 3,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/plain\": [\n       \"(1535, 4)\"\n      ]\n     },\n     \"execution_count\": 3,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.shape\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"The `len` function returns just the number of rows.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 4,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/plain\": [\n       \"1535\"\n      ]\n     },\n     \"execution_count\": 4,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"len(df)\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"The `dtypes` property returns a DataFrame of the column names and their respective data type.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 5,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003eColumn Name\u003c/th\u003e\u003cth\u003eData Type \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003edept      \u003c/td\u003e\u003ctd\u003estring    \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003erace      \u003c/td\u003e\u003ctd\u003estring    \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003egender    \u003c/td\u003e\u003ctd\u003estring    \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003esalary    \u003c/td\u003e\u003ctd\u003eint       \u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115adfd0\u003e\"\n      ]\n     },\n     \"execution_count\": 5,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.dtypes\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"The `columns` property returns a list of the columns.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 6,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/plain\": [\n       \"['dept', 'race', 'gender', 'salary']\"\n      ]\n     },\n     \"execution_count\": 6,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.columns\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Set new columns by assigning the `columns` property to a list.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 7,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b0160\u003e\"\n      ]\n     },\n     \"execution_count\": 7,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.columns = ['department', 'race', 'gender', 'salary']\\n\",\n    \"df.head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"The `values` property returns a single numpy array of all the data.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 8,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/plain\": [\n       \"array([['Houston Police Department-HPD', 'White', 'Male', 45279],\\n\",\n       \"       ['Houston Fire Department (HFD)', 'White', 'Male', 63166],\\n\",\n       \"       ['Houston Police Department-HPD', 'Black', 'Male', 66614],\\n\",\n       \"       ...,\\n\",\n       \"       ['Houston Police Department-HPD', 'White', 'Male', 43443],\\n\",\n       \"       ['Houston Police Department-HPD', 'Asian', 'Male', 55461],\\n\",\n       \"       ['Houston Fire Department (HFD)', 'Hispanic', 'Male', 51194]],\\n\",\n       \"      dtype=object)\"\n      ]\n     },\n     \"execution_count\": 8,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.values\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### Subset selection\\n\",\n    \"\\n\",\n    \"Subset selection is handled with the brackets. To select a single column, place that column name in the brackets.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 9,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b0f60\u003e\"\n      ]\n     },\n     \"execution_count\": 9,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df['race'].head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Select multiple columns with a list of strings.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 10,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b29e8\u003e\"\n      ]\n     },\n     \"execution_count\": 10,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df[['race', 'salary']].head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Simultaneously select rows and columns by passing the brackets the row selection followed by the column selection separated by a comma. Here we use integers for rows and strings for columns.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 11,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     77076\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     81239\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     81239\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b3b38\u003e\"\n      ]\n     },\n     \"execution_count\": 11,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"rows = [10, 50, 100]\\n\",\n    \"cols = ['salary', 'race']\\n\",\n    \"df[rows, cols]\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"You can use integers for the columns as well.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 12,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b5208\u003e\"\n      ]\n     },\n     \"execution_count\": 12,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"rows = [10, 50, 100]\\n\",\n    \"cols = [2, 0]\\n\",\n    \"df[rows, cols]\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"You can use a single integer and not just a list.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 13,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b3940\u003e\"\n      ]\n     },\n     \"execution_count\": 13,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df[99, 3]\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Or a single string for the columns\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 14,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b5c50\u003e\"\n      ]\n     },\n     \"execution_count\": 14,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df[99, 'salary']\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"You can use a slice for the rows\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 15,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e5\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e6\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e7\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b7c88\u003e\"\n      ]\n     },\n     \"execution_count\": 15,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df[20:100:10, ['race', 'gender']]\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"You can also slice the columns with either integers or strings\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 16,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e5\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e6\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e7\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b3588\u003e\"\n      ]\n     },\n     \"execution_count\": 16,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df[20:100:10, :2]\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 17,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e5\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e6\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e7\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b9c18\u003e\"\n      ]\n     },\n     \"execution_count\": 17,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df[20:100:10, 'department':'gender']\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"You can do boolean selection if you pass the brackets a one-column boolean DataFrame.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 18,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b70f0\u003e\"\n      ]\n     },\n     \"execution_count\": 18,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"filt = df['salary'] \u003e 100000\\n\",\n    \"filt.head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 19,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    107962\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    180416\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    165216\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e    100791\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    120916\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b74a8\u003e\"\n      ]\n     },\n     \"execution_count\": 19,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df[filt].head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 20,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003e    107962\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003e    180416\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003e    165216\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003e    100791\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003e    120916\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b98d0\u003e\"\n      ]\n     },\n     \"execution_count\": 20,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df[filt, ['race', 'salary']].head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### Assigning Columns\\n\",\n    \"You can only assign an entire new column or overwrite an old one. You cannot assign a subset of the data. You can assign a new column with a single value like this:\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 21,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003ctd\u003e      1000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003ctd\u003e      1000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003ctd\u003e      1000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003ctd\u003e      1000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003ctd\u003e      1000\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115b9710\u003e\"\n      ]\n     },\n     \"execution_count\": 21,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df['bonus'] = 1000\\n\",\n    \"df.head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"You can assign with a numpy array the same length as a column.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 22,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003ctd\u003e      3536\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003ctd\u003e      1296\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003ctd\u003e       511\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003ctd\u003e      4267\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003ctd\u003e      3766\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115bb160\u003e\"\n      ]\n     },\n     \"execution_count\": 22,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"import numpy as np\\n\",\n    \"df['bonus'] = np.random.randint(100, 5000, len(df))\\n\",\n    \"df.head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"You can assign a new column with a one column DataFrame.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 23,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     48815\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     64462\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     67125\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     75947\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     46156\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e5\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e    110001\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e6\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     53738\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e7\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e    185348\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e8\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     32575\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e9\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     57918\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003cstrong\u003e\u003ctd\u003e...\u003c/td\u003e\u003c/strong\u003e\u003ctd\u003e...\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1525\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     32936\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1526\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     49294\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1527\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     34218\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1528\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     82795\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1529\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e    104900\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1530\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     46408\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1531\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     67050\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1532\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     47368\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1533\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     60013\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1534\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e     52624\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115bb588\u003e\"\n      ]\n     },\n     \"execution_count\": 23,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df['salary'] + df['bonus']\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 24,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003ctd\u003e      3536\u003c/td\u003e\u003ctd\u003e     48815\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003ctd\u003e      1296\u003c/td\u003e\u003ctd\u003e     64462\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003ctd\u003e       511\u003c/td\u003e\u003ctd\u003e     67125\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003ctd\u003e      4267\u003c/td\u003e\u003ctd\u003e     75947\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003ctd\u003e      3766\u003c/td\u003e\u003ctd\u003e     46156\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115bbb70\u003e\"\n      ]\n     },\n     \"execution_count\": 24,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df['total salary'] = df['salary'] + df['bonus']\\n\",\n    \"df.head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### Arithmetic and comparison operators\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 25,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e    226395\u003c/td\u003e\u003ctd\u003e     17680\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e    315830\u003c/td\u003e\u003ctd\u003e      6480\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e    333070\u003c/td\u003e\u003ctd\u003e      2555\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e    358400\u003c/td\u003e\u003ctd\u003e     21335\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e    211950\u003c/td\u003e\u003ctd\u003e     18830\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115bbb00\u003e\"\n      ]\n     },\n     \"execution_count\": 25,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df1 = df[['salary', 'bonus']] * 5\\n\",\n    \"df1.head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 26,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115bd8d0\u003e\"\n      ]\n     },\n     \"execution_count\": 26,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df1 = df[['salary', 'bonus']] \u003e 100000\\n\",\n    \"df1.head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 27,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eTrue\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eTrue\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFalse\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eTrue\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115bdeb8\u003e\"\n      ]\n     },\n     \"execution_count\": 27,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df1 = df['race'] == 'White'\\n\",\n    \"df1.head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### Aggregation\\n\",\n    \"\\n\",\n    \"Most of the common aggregation methods are available. They only work down the columns and not across the rows.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 28,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     24960\u003c/td\u003e\u003ctd\u003e       101\u003c/td\u003e\u003ctd\u003e     25913\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115bba58\u003e\"\n      ]\n     },\n     \"execution_count\": 28,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.min()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Columns that the aggregation does not work are dropped.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 29,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e 56278.746\u003c/td\u003e\u003ctd\u003e  2594.283\u003c/td\u003e\u003ctd\u003e 58873.029\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115be3c8\u003e\"\n      ]\n     },\n     \"execution_count\": 29,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.mean()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 30,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         3\u003c/td\u003e\u003ctd\u003e         0\u003c/td\u003e\u003ctd\u003e         0\u003c/td\u003e\u003ctd\u003e       145\u003c/td\u003e\u003ctd\u003e      1516\u003c/td\u003e\u003ctd\u003e       145\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115be5c0\u003e\"\n      ]\n     },\n     \"execution_count\": 30,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.argmax()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 31,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e       347\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115c0160\u003e\"\n      ]\n     },\n     \"execution_count\": 31,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df['salary'].argmin()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Check if all salaries are greater than 20000\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 32,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eTrue\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115c0710\u003e\"\n      ]\n     },\n     \"execution_count\": 32,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df1 = df['salary'] \u003e 20000\\n\",\n    \"df1.all()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Count the number of non-missing values\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 33,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e      1535\u003c/td\u003e\u003ctd\u003e      1535\u003c/td\u003e\u003ctd\u003e      1535\u003c/td\u003e\u003ctd\u003e      1535\u003c/td\u003e\u003ctd\u003e      1535\u003c/td\u003e\u003ctd\u003e      1535\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115c0e10\u003e\"\n      ]\n     },\n     \"execution_count\": 33,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.count()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Get number of unique values.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 34,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         6\u003c/td\u003e\u003ctd\u003e         5\u003c/td\u003e\u003ctd\u003e         2\u003c/td\u003e\u003ctd\u003e       548\u003c/td\u003e\u003ctd\u003e      1318\u003c/td\u003e\u003ctd\u003e      1524\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115bd6a0\u003e\"\n      ]\n     },\n     \"execution_count\": 34,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.nunique()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### Non-Aggregating Methods\\n\",\n    \"These are methods that do not return a single value.\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Get the unique values of each column. The `unique` method returns a list of DataFrames containing the unique values for each column.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 35,\n   \"metadata\": {},\n   \"outputs\": [],\n   \"source\": [\n    \"dfs = df.unique()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 36,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eParks \u0026 Recreation\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e5\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115beac8\u003e\"\n      ]\n     },\n     \"execution_count\": 36,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"dfs[0]\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 37,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eNative American\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115beeb8\u003e\"\n      ]\n     },\n     \"execution_count\": 37,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"dfs[1]\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 38,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115bbcc0\u003e\"\n      ]\n     },\n     \"execution_count\": 38,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"dfs[2]\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Rename columns with a dictionary.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 39,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edept      \u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003eBONUS     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003ctd\u003e      3536\u003c/td\u003e\u003ctd\u003e     48815\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003ctd\u003e      1296\u003c/td\u003e\u003ctd\u003e     64462\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003ctd\u003e       511\u003c/td\u003e\u003ctd\u003e     67125\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003ctd\u003e      4267\u003c/td\u003e\u003ctd\u003e     75947\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003ctd\u003e      3766\u003c/td\u003e\u003ctd\u003e     46156\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115c6550\u003e\"\n      ]\n     },\n     \"execution_count\": 39,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.rename({'department':'dept', 'bonus':'BONUS'}).head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Drop columns with a string or list of strings.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 40,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003ctd\u003e      3536\u003c/td\u003e\u003ctd\u003e     48815\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003ctd\u003e      1296\u003c/td\u003e\u003ctd\u003e     64462\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003ctd\u003e       511\u003c/td\u003e\u003ctd\u003e     67125\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003ctd\u003e      4267\u003c/td\u003e\u003ctd\u003e     75947\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003ctd\u003e      3766\u003c/td\u003e\u003ctd\u003e     46156\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115c6c88\u003e\"\n      ]\n     },\n     \"execution_count\": 40,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.drop('race').head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 41,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003ctd\u003e      3536\u003c/td\u003e\u003ctd\u003e     48815\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003ctd\u003e      1296\u003c/td\u003e\u003ctd\u003e     64462\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003ctd\u003e       511\u003c/td\u003e\u003ctd\u003e     67125\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003ctd\u003e      4267\u003c/td\u003e\u003ctd\u003e     75947\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003ctd\u003e      3766\u003c/td\u003e\u003ctd\u003e     46156\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115c8710\u003e\"\n      ]\n     },\n     \"execution_count\": 41,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.drop(['race', 'gender']).head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### Non-aggregating methods that keep all columns\\n\",\n    \"The next several methods are non-aggregating methods that return a DataFrame with the same exact shape as the original. They only work on boolean, integer and float columns and ignore string columns.\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Absolute value\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 42,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003ctd\u003e      3536\u003c/td\u003e\u003ctd\u003e     48815\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003ctd\u003e      1296\u003c/td\u003e\u003ctd\u003e     64462\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003ctd\u003e       511\u003c/td\u003e\u003ctd\u003e     67125\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003ctd\u003e      4267\u003c/td\u003e\u003ctd\u003e     75947\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003ctd\u003e      3766\u003c/td\u003e\u003ctd\u003e     46156\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115c9320\u003e\"\n      ]\n     },\n     \"execution_count\": 42,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.abs().head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Cumulative min, max, and sum\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 43,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003ctd\u003e      3536\u003c/td\u003e\u003ctd\u003e     48815\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003ctd\u003e      3536\u003c/td\u003e\u003ctd\u003e     64462\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003ctd\u003e      3536\u003c/td\u003e\u003ctd\u003e     67125\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003ctd\u003e      4267\u003c/td\u003e\u003ctd\u003e     75947\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003ctd\u003e      4267\u003c/td\u003e\u003ctd\u003e     75947\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115c9c18\u003e\"\n      ]\n     },\n     \"execution_count\": 43,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.cummax().head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Clip values to be within a range.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 44,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003ctd\u003e     40000\u003c/td\u003e\u003ctd\u003e     48815\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     60000\u003c/td\u003e\u003ctd\u003e     40000\u003c/td\u003e\u003ctd\u003e     60000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     60000\u003c/td\u003e\u003ctd\u003e     40000\u003c/td\u003e\u003ctd\u003e     60000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     60000\u003c/td\u003e\u003ctd\u003e     40000\u003c/td\u003e\u003ctd\u003e     60000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003ctd\u003e     40000\u003c/td\u003e\u003ctd\u003e     46156\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115cb908\u003e\"\n      ]\n     },\n     \"execution_count\": 44,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.clip(40000, 60000).head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Round numeric columns\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 45,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45000\u003c/td\u003e\u003ctd\u003e      4000\u003c/td\u003e\u003ctd\u003e     49000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63000\u003c/td\u003e\u003ctd\u003e      1000\u003c/td\u003e\u003ctd\u003e     64000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     67000\u003c/td\u003e\u003ctd\u003e      1000\u003c/td\u003e\u003ctd\u003e     67000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     72000\u003c/td\u003e\u003ctd\u003e      4000\u003c/td\u003e\u003ctd\u003e     76000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42000\u003c/td\u003e\u003ctd\u003e      4000\u003c/td\u003e\u003ctd\u003e     46000\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115cc0f0\u003e\"\n      ]\n     },\n     \"execution_count\": 45,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.round(-3).head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Copy the DataFrame\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 46,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     45279\u003c/td\u003e\u003ctd\u003e      3536\u003c/td\u003e\u003ctd\u003e     48815\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63166\u003c/td\u003e\u003ctd\u003e      1296\u003c/td\u003e\u003ctd\u003e     64462\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003ctd\u003e       511\u003c/td\u003e\u003ctd\u003e     67125\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     71680\u003c/td\u003e\u003ctd\u003e      4267\u003c/td\u003e\u003ctd\u003e     75947\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     42390\u003c/td\u003e\u003ctd\u003e      3766\u003c/td\u003e\u003ctd\u003e     46156\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115ccba8\u003e\"\n      ]\n     },\n     \"execution_count\": 46,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.copy().head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Take the nth difference.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 47,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e 21335.000\u003c/td\u003e\u003ctd\u003e -3025.000\u003c/td\u003e\u003ctd\u003e 18310.000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e  8514.000\u003c/td\u003e\u003ctd\u003e  2971.000\u003c/td\u003e\u003ctd\u003e 11485.000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e-24224.000\u003c/td\u003e\u003ctd\u003e  3255.000\u003c/td\u003e\u003ctd\u003e-20969.000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e5\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e 36282.000\u003c/td\u003e\u003ctd\u003e -2228.000\u003c/td\u003e\u003ctd\u003e 34054.000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e6\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e 10254.000\u003c/td\u003e\u003ctd\u003e -2672.000\u003c/td\u003e\u003ctd\u003e  7582.000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e7\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e 72454.000\u003c/td\u003e\u003ctd\u003e  2893.000\u003c/td\u003e\u003ctd\u003e 75347.000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e8\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e-22297.000\u003c/td\u003e\u003ctd\u003e  1134.000\u003c/td\u003e\u003ctd\u003e-21163.000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e9\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e-125147.000\u003c/td\u003e\u003ctd\u003e -2283.000\u003c/td\u003e\u003ctd\u003e-127430.000\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115ce828\u003e\"\n      ]\n     },\n     \"execution_count\": 47,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.diff(2).head(10)\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Find the nth percentage change.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 48,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003ctd\u003e       nan\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     0.471\u003c/td\u003e\u003ctd\u003e    -0.855\u003c/td\u003e\u003ctd\u003e     0.375\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     0.135\u003c/td\u003e\u003ctd\u003e     2.292\u003c/td\u003e\u003ctd\u003e     0.178\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    -0.364\u003c/td\u003e\u003ctd\u003e     6.370\u003c/td\u003e\u003ctd\u003e    -0.312\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e5\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     0.506\u003c/td\u003e\u003ctd\u003e    -0.522\u003c/td\u003e\u003ctd\u003e     0.448\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e6\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     0.242\u003c/td\u003e\u003ctd\u003e    -0.710\u003c/td\u003e\u003ctd\u003e     0.164\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e7\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     0.671\u003c/td\u003e\u003ctd\u003e     1.419\u003c/td\u003e\u003ctd\u003e     0.685\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e8\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    -0.424\u003c/td\u003e\u003ctd\u003e     1.037\u003c/td\u003e\u003ctd\u003e    -0.394\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e9\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    -0.694\u003c/td\u003e\u003ctd\u003e    -0.463\u003c/td\u003e\u003ctd\u003e    -0.688\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115cf400\u003e\"\n      ]\n     },\n     \"execution_count\": 48,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.pct_change(2).head(10)\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Sort the DataFrame by one or more columns\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 49,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     24960\u003c/td\u003e\u003ctd\u003e       953\u003c/td\u003e\u003ctd\u003e     25913\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     26104\u003c/td\u003e\u003ctd\u003e      4258\u003c/td\u003e\u003ctd\u003e     30362\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     26125\u003c/td\u003e\u003ctd\u003e      3247\u003c/td\u003e\u003ctd\u003e     29372\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     26125\u003c/td\u003e\u003ctd\u003e       832\u003c/td\u003e\u003ctd\u003e     26957\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     26125\u003c/td\u003e\u003ctd\u003e      2461\u003c/td\u003e\u003ctd\u003e     28586\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115bd940\u003e\"\n      ]\n     },\n     \"execution_count\": 49,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.sort_values('salary').head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Sort descending\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 50,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    210588\u003c/td\u003e\u003ctd\u003e      3724\u003c/td\u003e\u003ctd\u003e    214312\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    199596\u003c/td\u003e\u003ctd\u003e       848\u003c/td\u003e\u003ctd\u003e    200444\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    186192\u003c/td\u003e\u003ctd\u003e      1778\u003c/td\u003e\u003ctd\u003e    187970\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e    180416\u003c/td\u003e\u003ctd\u003e      4932\u003c/td\u003e\u003ctd\u003e    185348\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e    178331\u003c/td\u003e\u003ctd\u003e      2124\u003c/td\u003e\u003ctd\u003e    180455\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115ce358\u003e\"\n      ]\n     },\n     \"execution_count\": 50,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.sort_values('salary', asc=False).head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Sort by multiple columns\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 51,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     26125\u003c/td\u003e\u003ctd\u003e      4446\u003c/td\u003e\u003ctd\u003e     30571\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     27914\u003c/td\u003e\u003ctd\u003e      2855\u003c/td\u003e\u003ctd\u003e     30769\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     28169\u003c/td\u003e\u003ctd\u003e      2572\u003c/td\u003e\u003ctd\u003e     30741\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     28995\u003c/td\u003e\u003ctd\u003e      2874\u003c/td\u003e\u003ctd\u003e     31869\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     30347\u003c/td\u003e\u003ctd\u003e      4938\u003c/td\u003e\u003ctd\u003e     35285\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115d1278\u003e\"\n      ]\n     },\n     \"execution_count\": 51,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.sort_values(['race', 'salary']).head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Randomly sample the DataFrame\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 52,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     62540\u003c/td\u003e\u003ctd\u003e      2995\u003c/td\u003e\u003ctd\u003e     65535\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     63336\u003c/td\u003e\u003ctd\u003e      1547\u003c/td\u003e\u003ctd\u003e     64883\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     52514\u003c/td\u003e\u003ctd\u003e      1150\u003c/td\u003e\u003ctd\u003e     53664\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115cfe80\u003e\"\n      ]\n     },\n     \"execution_count\": 52,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.sample(n=3)\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Randomly sample a fraction\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 53,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     60347\u003c/td\u003e\u003ctd\u003e      1200\u003c/td\u003e\u003ctd\u003e     61547\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     49109\u003c/td\u003e\u003ctd\u003e      3598\u003c/td\u003e\u003ctd\u003e     52707\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     48984\u003c/td\u003e\u003ctd\u003e      4602\u003c/td\u003e\u003ctd\u003e     53586\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     55461\u003c/td\u003e\u003ctd\u003e      2813\u003c/td\u003e\u003ctd\u003e     58274\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     29286\u003c/td\u003e\u003ctd\u003e      1877\u003c/td\u003e\u003ctd\u003e     31163\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e5\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     66614\u003c/td\u003e\u003ctd\u003e      4480\u003c/td\u003e\u003ctd\u003e     71094\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e6\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     28024\u003c/td\u003e\u003ctd\u003e      4475\u003c/td\u003e\u003ctd\u003e     32499\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115d2080\u003e\"\n      ]\n     },\n     \"execution_count\": 53,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.sample(frac=.005)\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"Sample with replacement\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 54,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003esalary    \u003c/th\u003e\u003cth\u003ebonus     \u003c/th\u003e\u003cth\u003etotal salary\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eParks \u0026 Recreation\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     31075\u003c/td\u003e\u003ctd\u003e      1665\u003c/td\u003e\u003ctd\u003e     32740\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     67038\u003c/td\u003e\u003ctd\u003e       644\u003c/td\u003e\u003ctd\u003e     67682\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     37024\u003c/td\u003e\u003ctd\u003e      1532\u003c/td\u003e\u003ctd\u003e     38556\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e     57433\u003c/td\u003e\u003ctd\u003e      3106\u003c/td\u003e\u003ctd\u003e     60539\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e     53373\u003c/td\u003e\u003ctd\u003e       924\u003c/td\u003e\u003ctd\u003e     54297\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115d2c18\u003e\"\n      ]\n     },\n     \"execution_count\": 54,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.sample(n=10000, replace=True).head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### String-only methods\\n\",\n    \"\\n\",\n    \"Use the `str` accessor to call methods available just to string columns. Pass the name of the string column as the first parameter for all these methods.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 55,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         2\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         0\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         2\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         2\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         0\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115d5240\u003e\"\n      ]\n     },\n     \"execution_count\": 55,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.str.count('department', 'P').head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 56,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ehouston police department-hpd\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ehouston fire department (hfd)\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ehouston police department-hpd\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003epublic works \u0026 engineering-pwe\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ehouston airport system (has)\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115d6080\u003e\"\n      ]\n     },\n     \"execution_count\": 56,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.str.lower('department').head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 57,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         0\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         0\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         0\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e        -1\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e         0\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115d6940\u003e\"\n      ]\n     },\n     \"execution_count\": 57,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.str.find('department', 'Houston').head()\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### Grouping\\n\",\n    \"\\n\",\n    \"pandas_cub provides the `value_counts` method for simple frequency counting of unique values and `pivot_table` for grouping and aggregating.\\n\",\n    \"\\n\",\n    \"The `value_counts` method returns a list of DataFrames, one for each column.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 58,\n   \"metadata\": {},\n   \"outputs\": [],\n   \"source\": [\n    \"dfs = df[['department', 'race', 'gender']].value_counts()\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 59,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003ecount     \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003e       570\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003e       365\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003e       341\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003e       103\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003e       103\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e5\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eParks \u0026 Recreation\u003c/td\u003e\u003ctd\u003e        53\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115d8470\u003e\"\n      ]\n     },\n     \"execution_count\": 59,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"dfs[0]\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 60,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003ecount     \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003e       542\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003e       518\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003e       381\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003e        87\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eNative American\u003c/td\u003e\u003ctd\u003e         7\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115d85c0\u003e\"\n      ]\n     },\n     \"execution_count\": 60,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"dfs[1]\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 61,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003egender    \u003c/th\u003e\u003cth\u003ecount     \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eMale      \u003c/td\u003e\u003ctd\u003e      1135\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eFemale    \u003c/td\u003e\u003ctd\u003e       400\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115d86d8\u003e\"\n      ]\n     },\n     \"execution_count\": 61,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"dfs[2]\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"If your DataFrame has one column, a DataFrame and not a list is returned. You can also return the relative frequency by setting the `normalize` parameter to `True`.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 62,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003ecount     \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003e     0.353\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003e     0.337\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003e     0.248\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003e     0.057\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eNative American\u003c/td\u003e\u003ctd\u003e     0.005\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115dd0f0\u003e\"\n      ]\n     },\n     \"execution_count\": 62,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df['race'].value_counts(normalize=True)\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"The `pivot_table` method allows to group by one or two columns and aggregate values from another column. Let's find the average salary for each race and gender. All parameters must be strings.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 63,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003eFemale    \u003c/th\u003e\u003cth\u003eMale      \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003e 58304.222\u003c/td\u003e\u003ctd\u003e 60622.957\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003e 48133.382\u003c/td\u003e\u003ctd\u003e 51853.000\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003e 44216.960\u003c/td\u003e\u003ctd\u003e 55493.064\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eNative American\u003c/td\u003e\u003ctd\u003e 58844.333\u003c/td\u003e\u003ctd\u003e 68850.500\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003e 66415.528\u003c/td\u003e\u003ctd\u003e 63439.196\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115dd9e8\u003e\"\n      ]\n     },\n     \"execution_count\": 63,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.pivot_table(rows='race', columns='gender', values='salary', aggfunc='mean')\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"If you don't provide `values` or `aggfunc` then by default it will return frequency (a contingency table).\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 64,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003erace      \u003c/th\u003e\u003cth\u003eFemale    \u003c/th\u003e\u003cth\u003eMale      \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eAsian     \u003c/td\u003e\u003ctd\u003e        18\u003c/td\u003e\u003ctd\u003e        69\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eBlack     \u003c/td\u003e\u003ctd\u003e       207\u003c/td\u003e\u003ctd\u003e       311\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHispanic  \u003c/td\u003e\u003ctd\u003e       100\u003c/td\u003e\u003ctd\u003e       281\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eNative American\u003c/td\u003e\u003ctd\u003e         3\u003c/td\u003e\u003ctd\u003e         4\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eWhite     \u003c/td\u003e\u003ctd\u003e        72\u003c/td\u003e\u003ctd\u003e       470\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115d5f98\u003e\"\n      ]\n     },\n     \"execution_count\": 64,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.pivot_table(rows='race', columns='gender')\"\n   ]\n  },\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"You can group by just a single column.\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 65,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003edepartment\u003c/th\u003e\u003cth\u003emean      \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHealth \u0026 Human Services\u003c/td\u003e\u003ctd\u003e 51324.981\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e1\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Airport System (HAS)\u003c/td\u003e\u003ctd\u003e 53990.369\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e2\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Fire Department (HFD)\u003c/td\u003e\u003ctd\u003e 59960.441\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e3\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eHouston Police Department-HPD\u003c/td\u003e\u003ctd\u003e 60428.746\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e4\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003eParks \u0026 Recreation\u003c/td\u003e\u003ctd\u003e 39426.151\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e5\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003ePublic Works \u0026 Engineering-PWE\u003c/td\u003e\u003ctd\u003e 50207.806\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115c1940\u003e\"\n      ]\n     },\n     \"execution_count\": 65,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.pivot_table(rows='department', values='salary', aggfunc='mean')\"\n   ]\n  },\n  {\n   \"cell_type\": \"code\",\n   \"execution_count\": 66,\n   \"metadata\": {},\n   \"outputs\": [\n    {\n     \"data\": {\n      \"text/html\": [\n       \"\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003e\u003c/th\u003e\u003cth\u003eHealth \u0026 Human Services\u003c/th\u003e\u003cth\u003eHouston Airport System (HAS)\u003c/th\u003e\u003cth\u003eHouston Fire Department (HFD)\u003c/th\u003e\u003cth\u003eHouston Police Department-HPD\u003c/th\u003e\u003cth\u003eParks \u0026 Recreation\u003c/th\u003e\u003cth\u003ePublic Works \u0026 Engineering-PWE\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e\u003cstrong\u003e0\u003c/strong\u003e\u003c/td\u003e\u003ctd\u003e 51324.981\u003c/td\u003e\u003ctd\u003e 53990.369\u003c/td\u003e\u003ctd\u003e 59960.441\u003c/td\u003e\u003ctd\u003e 60428.746\u003c/td\u003e\u003ctd\u003e 39426.151\u003c/td\u003e\u003ctd\u003e 50207.806\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\"\n      ],\n      \"text/plain\": [\n       \"\u003cpandas_cub.DataFrame at 0x1115de748\u003e\"\n      ]\n     },\n     \"execution_count\": 66,\n     \"metadata\": {},\n     \"output_type\": \"execute_result\"\n    }\n   ],\n   \"source\": [\n    \"df.pivot_table(columns='department', values='salary', aggfunc='mean')\"\n   ]\n  }\n ],\n \"metadata\": {\n  \"kernelspec\": {\n   \"display_name\": \"Python 3\",\n   \"language\": \"python\",\n   \"name\": \"python3\"\n  },\n  \"language_info\": {\n   \"codemirror_mode\": {\n    \"name\": \"ipython\",\n    \"version\": 3\n   },\n   \"file_extension\": \".py\",\n   \"mimetype\": \"text/x-python\",\n   \"name\": \"python\",\n   \"nbconvert_exporter\": \"python\",\n   \"pygments_lexer\": \"ipython3\",\n   \"version\": \"3.6.8\"\n  }\n },\n \"nbformat\": 4,\n \"nbformat_minor\": 2\n}\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdexplo%2Fpandas_cub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdexplo%2Fpandas_cub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdexplo%2Fpandas_cub/lists"}