Yes.
- Create a table and index the rows using the second method described here.
- Add enough rows to cover the total number of unique categories
- Create a lookup column that targets the Category column in your transactional table. This will give you an array of Categories.
- Use a Unique Elements column to remove duplicates from the array
- Use a Single Value column, taking the Nth from start of the previous column, where N is the Row Index number. This should give you a list of Categories, one in each row.
- Create a multiple relation column, matching each Category with the same column in your transactional table
- Create whatever rollups you need via that relation.