Company market share percentages by year and category
yoy_growth
Year-over-year growth rates for trend analysis
data_coverage
Coverage quality assessment by year and company
device_summary
Aggregated device counts by company/year/category
Coverage by Category
Category
Devices
Total Implants
Status
Pacemaker
844
35.8M
Complete
ICD
902
12.0M
Complete
CRT-D
511
8.5M
Complete
CRT-P
116
1.4M
Complete
TPS (Leadless)
1
100K
Complete
Data Extraction Pipeline
PDF Reports (ABT, BSX, MDT)
|
v
+-------------------+
| extract_pdfs.py | Company-specific parsing patterns
+-------------------+
|
v
+-------------------+
| CSV Files (51) | extracted_data/*.csv
+-------------------+
|
v
+-------------------+
| import_csv_to_db | Duplicate detection, validation
+-------------------+
|
v
+-------------------+
| ppr_agent.db | SQLite with 2,374 devices
+-------------------+
Company-Specific PDF Formats
Abbott (ABT)
# Format: Device name with trademark symbols followed by "MODEL [code]"
Quadra Assura(TM) CRT-D MODEL CD3369-40Q
# Pattern: Looks for trademark symbols and "MODEL" keyword
Boston Scientific (BSX)
# Format: All-caps device family followed by "Models: [codes]"
DYNAGEN/INOGEN/ORIGEN CRT-D Models: G050/G051/G056/...
# Pattern: All-caps name + category, then "Models:" with colon
Medtronic (MDT)
# Format: "Excluding NBD" survival line with device name at end
Excluding NBD 99.7% 99.3% ... Maximo II CRT-D
# Pattern: Extracts name after last percentage/decimal# Note: Format changed in 2019 from decimals (0.997) to percentages (99.7%)
Common Database Queries
# Total devices
sqlite3 ppr_agent.db "SELECT COUNT(*) FROM devices;"
# By company
sqlite3 ppr_agent.db "SELECT company, COUNT(*) as devices, SUM(registered_us_implants) as implants FROM devices GROUP BY company;"
# Top devices by implant count
sqlite3 ppr_agent.db "SELECT company, year, device_family, registered_us_implants FROM devices ORDER BY registered_us_implants DESC LIMIT 10;"
# Export to CSV
sqlite3 -header -csv ppr_agent.db "SELECT * FROM market_share;" > market_share.csv