Can we avoid doing the conversion here? Data may be a lazy array and this will load it into memory. Maybe you could accomplish this by putting it as_safe_array inside PandasIndexAdapter a few lines down?