numpy.random.choice vs random.choice

¿Por qué numpy.random.choice no funciona igual que random.choice? Cuando hago esto:

 >>> random.choice([(1,2),(4,3)])
 (1, 2)

Funciona.

Pero cuando hago esto:

 >>> np.random.choice([(1,2), (3,4)])
 Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "mtrand.pyx", line 1393, in mtrand.RandomState.choice 
 (numpy/random/mtrand/mtrand.c:15450)
 ValueError: a must be 1-dimensional

¿Cómo logro el mismo comportamiento que random.choice () en numpy.random.choice ()?

Respuestas a la pregunta(2)

Su respuesta a la pregunta