EDA with Pandas and Jupyter
Data Science Python, Pandas, Jupyter, Plotly
Delivery Constraint & Opportunity Analysis · Updated 1 month, 2 weeks ago
Content
Skill: EDA with Pandas and Jupyter
Capability Domain: Data Science
Technology Stack: Python, Pandas, Jupyter, Plotly
Linked Activities: EDA with Pandas and Jupyter
Recipe
- Pull via
awswrangler.athena.read_sql_query(sql, database="ops_catalog", workgroup="ops-lake-analysts")— not a raw boto3 polling loop; awswrangler handles pagination and polling. - Pin the query text as a literal string in the notebook's first cell, and record the Athena
QueryExecutionIdin a markdown cell — that's what makes a finding reproducible against a catalog that keeps growing. - Classify the notebook's own question in a markdown cell up front — describe, classify, or predict — the acceptable rigor bar differs: describe needs clean summary stats; predict needs a held-out validation split and an explicit baseline to beat.
- Standard opening cells, every notebook:
df.info(), null-rate per column, duplicate-check on the join key (issue key / PR number) — most "surprising" operational-data findings turn out to be a duplicate-row bug.
Pitfalls
- AWS login refresh is not Athena AccessDenied. Local Jupyter/
awswranglercan fail withAccessDeniedExceptiononCreateOAuth2Token, thenLoginRefreshRequired: "The refresh token has expired" / "Please reauthenticate usingaws login". Wrangler never reachedStartQueryExecution. This is credential session expiry, not lake IAM / workgroup deny. Procedure: (1) terminalaws login(or this org's equivalentaws sso login); (2) confirmaws sts get-caller-identitymatchesdocs/lake-scope-contract.yamlaws_account(live opsdl:411113550285); (3) Restart the Jupyter kernel, then Restart & Run All — boto3 clients in a running kernel keep the dead token; (4) the login credential provider also needspip install 'botocore[crt]'(opsdlrequirements-eda.txt). - Re-running cells out of order and trusting the result is the most common way a notebook becomes unreproducible — Restart & Run All before treating any finding as final.
Details
- Capability Domain:
- Data Science
- Technology Stack:
- Python, Pandas, Jupyter, Plotly
- Created:
- 2 months ago
- Updated:
- 1 month, 2 weeks ago
Playbook
Activities Using This Skill 1
- Look until Trusted Constraint and Flow Analysis