Yet another option: What about avoiding the in-place operation, i.e.
``
faulty = np.array(30 * [(180, -100)])
faulty = faulty + 5 * np.random.normal(size=faulty.shape)
``
I haven't tested this, but it should work. ``faulty`` would be silently replaced by a newly allocated float array.