начало работы с обработкой данных с помощью python

У меня есть таблица Excel объемом около 3 миллионов ячеек. Я задал следующий вопрос, и мне понравился ответ о сохранении таблицы в виде CSV, а затем обработал ее с помощью python:

решение для выполнения множества расчетов по 3 миллионам точек данных и составлению графиков

  1. есть ли библиотека, которую я могу использовать, которая будет читать csv в матрицу, или я должен написать ее сам?
  2. питон вообще разговаривает с VBA?
  3. после того, как я закончил обработку данных, легко ли вернуть его в виде CSV, чтобы я мог открыть его в excel для просмотра?

есть ли библиотека, которую я могу использовать, которая будет читать csv в матрицу, или я должен написать ее сам?

Модуль csv обрабатывает все, что вы можете захотеть.

питон вообще разговаривает с VBA?

Железный питон мог бы.

после того, как я закончил обработку данных, легко ли вернуть его в виде CSV, чтобы я мог открыть его в excel для просмотра?

Модуль csv обрабатывает все, что вы можете захотеть.

Предложение: прочитайте это: http://docs.python.org/library/csv.html

Мне нравится loadtxt NumPy для такого рода вещей. Очень настраивается для чтения CSV. И savetxt для того, чтобы вернуть его после манипуляции. Или вы можете проверить встроенный модуль csv, если вы не хотите устанавливать ничего нового.

Если мы говорим на pythonish, почему бы не использовать http://www.python-excel.org/ ?

Пример файла чтения:

 import xlrd rb = xlrd.open_workbook('file.xls',formatting_info=True) sheet = rb.sheet_by_index(0) for rownum in range(sheet.nrows): row = sheet.row_values(rownum) for c_el in row: print c_el 

Написание нового файла:

 import xlwt from datetime import datetime font0 = xlwt.Font() font0.name = 'Times New Roman' font0.colour_index = 2 font0.bold = True style0 = xlwt.XFStyle() style0.font = font0 style1 = xlwt.XFStyle() style1.num_format_str = 'D-MMM-YY' wb = xlwt.Workbook() ws = wb.add_sheet('A Test Sheet') ws.write(0, 0, 'Test', style0) ws.write(1, 0, datetime.now(), style1) ws.write(2, 0, 1) ws.write(2, 1, 1) ws.write(2, 2, xlwt.Formula("A3+B3")) wb.save('example.xls') 

На странице есть другие примеры.

Если вы не хотите иметь дело с переходом из CSV, вы можете использовать win32com, который можно скачать здесь. http://python.net/crew/mhammond/win32/Downloads.html

Давайте будем гением компьютера.