Попробуйте использовать Nodes['f'][0,0] = numpy.array([i/9.0 for i in range(9)])
вместо:
import numpy
Nodes = numpy.ndarray(shape=(1,1), dtype=[('f', (float, 9))])
print Nodes[0,0]['f']
# [ 0.00000000e+000 2.10042365e-316 2.44222340e-316 6.90749588e-310
# 2.10041417e-316 4.22653002e-317 2.76341350e-316 6.90749588e-310
# 3.95252517e-322]
Nodes[0,0]['f'] = numpy.array([i/9.0 for i in range(9)])
print Nodes[0,0]['f']
# [ 0.00000000e+000 2.10042365e-316 2.44222340e-316 6.90749588e-310
# 2.10041417e-316 4.22653002e-317 2.76341350e-316 6.90749588e-310
# 3.95252517e-322]
Nodes['f'][0,0] = numpy.array([i/9.0 for i in range(9)])
print Nodes[0,0]['f']
# [ 0. 0.11111111 0.22222222 0.33333333 0.44444444 0.55555556
# 0.66666667 0.77777778 0.88888889]
Я не уверен, почему есть разница, но она, вероятно, связана с этим вопросом .