This is an interesting challenge.
If you could guarantee that NO product category records were there - it would be easy. On page load (or some other action) run a sequence of action framework steps that creates the new records in the correct category.
If you could guarantee that ALL product category records were there - it would be easy. Just query the records and put the checklist questions in your table .
But the mix and match conditionality is tough. I think you’ll need to go to javascript for this. You’ll have to use the javascript API to look at the rows in your model. If the product category is found - the existing record can be displayed, but if the catoegry is missing a new record is created.
Fun!