By a cancelled bus service I'm assuming you mean something like 'The 0715 departure from Drummer Street to Little Wibbling last Thursday', rather then 'The Citi 7'?
As it happens I've been doing some work to match the real-time position information that we receive (which we call 'trips') against published timetable 'journeys'. This was partly as a quality control exercise, but I was also interested to see if I could analyse punctuality and cancellations. For a variety of reasons this isn't easy, but what I do know is that out of about 2,500 journeys in and around Cambridge per day Mon-Fri, we get no trip data for about 300 of them. Some of these are because some of the smaller operators don't seem to provide real-time data, and some could be casue by faulty position recording equipment, but the rest presumably represent journeys that never happened.
Unfortunately we aren't currently able to publish the real-time data on which this is based, so we can't make the raw data available. The tools that perform the analysis are in GitHub at https://github.com/SmartCambridge/timetable_matching, and the DESCRIPTION.md file in that repository explains the methodology and includes some indicative numbers.
If you would be interested in talking about this further, and perhaps seeing the tooling in action, then contact us off-line at email@example.com and we'll sort something out.
Adaptive Cities Programme, University of Cambridge