ISFDB:Data Entropy

Progress
The percentages are for bad/missing data and should ideally continually be decreasing. The total number of magazine pages and publications should generally be increasing as more are published, but may dip if we actively work on duplicate removal for a while. Other clean-up projects may cause blips: e.g. adding publications that appeared only in reviews has led to a slight increase in publications lacking prices as it's difficult to find this data for older publications from online sources alone.

Total verifications over time
The initial scripts counted multiple verifications per pub, so couldn't be used to generate percentages.

SQL scripts Used
These are rough scripts and could generally all be improved: however, the results above were generated using these so any changes/improvements invalidate (even if only partially) the figures gathered so far.

Magazine Pages with or without page numbers:

select case ifnull(pubc_page, -999) when -999 then "Bad" else "Good" end, count(*) from pub_content pc, pubs p, titles t where p.pub_id = pc.pub_id and p.pub_ctype = 'MAGAZINE' and t.title_id = pc.title_id and t.title_ttype NOT IN ('EDITOR','COVERART') group by case ifnull(pubc_page, -999) when -999 then "Bad" else "Good" end

Publications with or without total page count:

select case ifnull(pub_pages, -999) when -999 then "Bad" else "Good" end, count(*) from pubs p WHERE p.pub_ptype NOT LIKE '%audio%' And p.pub_ptype NOT LIKE '%cassette%' And p.pub_ptype NOT LIKE 'CD%'       And p.pub_ptype NOT LIKE 'compact disc%' And p.pub_ptype NOT LIKE 'e%book%'   And p.pub_ptype NOT LIKE 'electron%' And p.pub_ptype NOT LIKE '%web%'     And p.pub_ptype NOT LIKE '%ezine%' And p.pub_ptype NOT LIKE '%internet%' And p.pub_ptype NOT LIKE '%mp3%' And p.pub_ptype NOT LIKE '%Adobe%'   And p.pub_ptype NOT LIKE '%Mobipocket%' And p.pub_ptype NOT LIKE '%PDF%'     And p.pub_ptype NOT LIKE '%tape%' And p.pub_ptype NOT LIKE '%www%'     And p.pub_ptype NOT LIKE '%digit%' And p.pub_ptype NOT LIKE '%online%' group by case ifnull(pub_pages, -999) when -999 then "Bad" else "Good" end

Publications with or without prices:

select case ifnull(pub_price, 'L') when 'L' then "Bad" else "Good" end, count(*) from pubs p group by case ifnull(pub_price, 'L') when 'L' then "Bad" else "Good" end

Verifications (corrected): select 'Primary Verified', count(DISTINCT p.pub_id) from pubs p, verification v where v.pub_id = p.pub_id and (v.reference_id = 1 or v.reference_id = 12) UNION select 'Verified', count(DISTINCT p.pub_id) from pubs p, verification v where v.pub_id = p.pub_id UNION select 'Total Pubs', count(*) from pubs p