¿Cómo acceder a elementos de numpy ndarray?

Estoy usando scipy'sloadmat función para cargar un archivo de datos matlab en python.

from scipy.io import loadmat  

data   = loadmat('data.mat')
fields = data['field']

El tipo defields esnumpy.ndarray:

print 'fields type={}'.format(type(fields))
print 'fields dtype={}'.format(fields.dtype)
print 'fields shape={}'.format(fields.shape)
fields type=<type 'numpy.ndarray'>
fields dtype=object
fields shape=(5,)

I iterar sobre la matriz usandonditer:

for x in np.nditer(fields, flags=['refs_ok']):
    print 'x={}'.format(x)
    print 'x type={}'.format(type(x))
    print 'x dtype={}'.format(x.dtype)
    print 'x shape={}'.format(x.shape)
    break
x=[u'ACE']
x type=<type 'numpy.ndarray'>
x dtype=object
x shape=()

IndexError:

Si trato de acceder al primer elemento dex Consigo unIndexError:

x[0]
---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-102-8c374ae22096> in <module>()
     17     print 'type={}'.format(type(x))
     18     print 'dtype={}'.format(x.dtype)
---> 19     x[0]
     20     break
     21 

IndexError: too many indices for array

Preguntas:

¿Cómo es que sitype(x) devolucionesnump.ndarray dice "demasiados índices para la matriz"?¿Cómo puedo extraer el contenido dex en una cuerda?

Aquí están las versiones que estoy usando:

print 'python version: {}'.format(sys.version)
print 'numpy version: {}'.format(numpy.__version__)
print 'scipy version: {}'.format(scipy.__version__)
python version: 2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2]
numpy version: 1.11.0
scipy version: 0.17.1

Respuestas a la pregunta(1)

Su respuesta a la pregunta