Agent skill · data analytics · aiskillstore

engineering-nba-data

Extracts, transforms, and analyzes NBA statistics using the nba_api Python library. Use when working with NBA player stats, team data, game logs, shot charts, league statistics, or any NBA-related data engineering tasks. Supports both stats.nba.com endpoints and static player/team lookups.

Why this skill is useful

Provides specific commands and workflows for extracting and processing NBA data using the nba_api library, which the AI may not generate on its own.

What it needs

Requires nba_api installed locally. About 2k tokens when loaded. Last updated 2026-08-07. 405 stars on the source repository.

What this skill does

Goal: Extract and process NBA statistical data efficiently using the nbaapi library for data analysis, reporting, and application development. IMPORTANT: The nbaapi library accesses stats.nba.com endpoints. All data requests return structured datasets that can be output as JSON, dictionaries, or pandas DataFrames. Workflow Phase 1: Setup and Installation Install nbaapi: pip install nbaapi if not yet installed Import required modules based on task: from nbaapi.stats.endpoints import [endpointname] for stats.nba.com data from nbaapi.stats.static import players, teams for static lookups from nbaapi.stats.library.parameters import [parameterclasses] for valid parameter values Phase 2: Data Retrieval For Player/Team Lookups (No API Calls): Use players.findplayersbyfullname('playername') for player searches Use teams.findteamsbyfullname('teamname') for team searches Both return dictionaries with id, fullname, and other metadata No HTTP requests are sent; data is embedded in the package For Stats Endpoints (API Calls): Identify the correct endpoint from table of contents Initialize endpoint with required parameters: endpointclass(param1=value1, param2=value2) Access datasets using dot notation: responseobject.datasetname Retrieve data in desired format: .getjson() for JSON string .getdict() for dictionary .getdataframe() for pandas DataFrame Custom Request Configuration: Set custom headers: endpointclass(playerid=123, headers=customheaders) Set proxy: endpointclass(playerid=123, proxy='127.0.0.1:80') Set timeout: endpointclass(playerid=123, timeout=100) (in seconds) Phase 3: Data Processing Extract specific datasets from endpoint responses Transform data using pandas for aggregations, filtering, joins Normalize nested data structures as needed Handle multiple datasets returned by single endpoint Phase 4: Output and Storage Export to CSV: df.tocsv('output.csv', index=False) Export to JSON: Use .getjson() or df.tojson() Store in database using pandas .tosql() method Cache re …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills aiskillstore/engineering-nba-data

View the source on GitHub

Browse the @skills marketplace