Какой самый эффективный способ преобразовать набор результатов MySQL в массив NumPy?

Я использую MySQLdb и Python. У меня есть несколько базовых запросов, таких как:

c=db.cursor()
c.execute("SELECT id, rating from video")
results = c.fetchall()

Мне нужно, чтобы «результаты» были массивом NumPy, и я стараюсь экономно расходовать память. Кажется, что копирование данных строка за строкой было бы невероятно неэффективным (потребуется вдвое больше памяти). Есть ли лучший способ преобразовать результаты запроса MySQLdb в формат массива NumPy?

Я хочу использовать формат массива NumPy, потому что я хочу иметь возможность легко нарезать и нарезать данные, а это не так. Похоже, в этом отношении python очень дружелюбен к многомерным массивам.

e.g. b = a[a[:,2]==1] 

Спасибо!

14
задан doug 25 February 2014 в 20:40
поделиться