Can I use Shakedown if my opponent doesn't have any units?
No, you cannot play Shakedown if your opponent does not control any units.
According to the card's text, Shakedown has a targeting requirement: "Choose an enemy unit." Because the spell requires a target to be chosen when it is played, your opponent must control at least one unit for you to legally play the card.
This contrasts with effects that do not target, such as Cull the Weak, where the choice of units is made upon resolution rather than at the time of playing the card.