Theoretically this can also be done all in the data editor, though it would require more work then doing it via trigger, but I'll try to give a way you can do DSG's method with the data editor alone.
Step 1: Make your behaviors, one to for each actor event that you want to detect and create a unit portrait for. (Hidden flag is optional, really its up to you if you want this behavior to appear on the unit)
Step 2: Make apply behavior effects for each one of your behaviors in Step 1.
Step 3: Make a Set effect and add your apply effects to it, set the min. and max count to 1 and enable Random.
Step 4: Make an ability of type Effect - Instant, give it any command button you desire (the button doesn't matter, the ability will disappear quickly as it is) and check the flags to make it Auto Cast and Auto Cast On, and add your effect Set.
Step 5: Make a Requirement that counts the behavior completed at unit is equal to 0 (use And between each behavior you created) in the Show category (I do Used as well, but I'm picky)
Step 6: Add your ability to your unit, and set its ability command card anywhere, (preferably underneath a current command card button so its never visible) and add the requirement from Step 5 into its requirement field (this will ensure that when your ability fires, a random behavior will be addec, causing your requirement to return false and preventing the ability from firing again, and will cause it to become hidden even if you gave it its own command card button.)
Yes it is probably longer than what it would take to just trigger a random effect or behavior to be applied whenever the unit is created, but to me I'd much rather do things that can be done in an object (data) editor than with a trigger editor if it can be done.