Leniv
Июнь 21, 2020 01:53:26
Создал простенький код чтобы прочитать таблицу из экселя:
import pandas
data = pandas.read_excel('C:\Py_test\Док.xlsx', sheet_name='Док1')
print(data)
Принт печатает корректно, в таблице есть числа и слова.
А потом начинаются проблемы, не могу вытащить хоть какую ячейку по координатам “x” и “y”.
По идее “data” двухмерный массив, и конструкция - “print(data ( x ) ( y ) )” должна выводить ячейку с заданными координатами, но нет, выскакивает ошибка или “data” вообще другая структура, не массив?
Подскажите как можно вытащить отдельные ячейки из “data”?
PEHDOM
Июнь 21, 2020 14:16:51
4kpt_V
Июнь 21, 2020 22:20:17
Чего тянем именно пандасом? Там настолько большой файл предполагается?
Returns
DataFrame or dict of DataFrames
DataFrame from the passed in Excel file. See notes in sheet_name argument for more information on when a dict of DataFrames is returned.
Пандас имеет свойство менять код не меняя документацию, поэтому хорошо перепроверять что в реале выдает на выход тот или иной метод.
Как я понимаю в этом методе возвращается или дата фрейм или словарь из дата фреймов если sheet_name не один.
4kpt_V
Июнь 21, 2020 22:22:03
PEHDOM
по идее может и да, в по документации нет.
К пандасу лучше проверять по-факту.
У меня тут недавно краш был на 1.Х потому как они официально поддерживают такой типа данных для передаче в одном методе, а по-факту нифига они не поддерживают. Поломали обратную совместимость причем непонятно почему. В arrow ничего не менялось, а тут решили выпендриться.
4kpt_V
Июнь 21, 2020 22:38:31
P.S. Если Вам нужны просто данные и размер файле не представляется большим и и дальше по проекту Вы не планируете что-там делать в пандасе, то можно использовать xlrd или openpyxl.
Leniv
Июнь 23, 2020 07:37:35
4kpt_V
xlrd
Так и сделал, через xlrd всё замечательно прочиталось, всем спасибо.