There are many factors to define Hamlet's inaction. Hamlet internalizes his contemplation of action with regards to his father's murder. His introspective nature causes him to become caught up in questions of human fallability and existence. Analyzing his own motives for killing Claudius are of more importance at this time to Hamlet, than taking impulsive action.
There is also Hamlet's melancholy nature to consider. Hamlet is often shown depressed, and depressive states lead to an inability to act.
One last consideration is that Hamlet may be practicing restraint. His ability to stall his impulse to kill in order to consider rational ways to deal with this issue could be at the center of his inaction.
Hamlet does not immediately avenge his father's murder because he is indecisive. This is his tragic flaw. At first he is unsure whether or not he can believe the ghost - he wonders if it might be sent from the devil to trick him. Then once he proves it is true through the play, he still waivers in the actual act of killing Claudius. His tragic flaw leads to the death of most of the characters by the end of the play.