Matlab теряет ответ при использовании xlsread чтения большой таблицы

Я пытаюсь использовать функцию xlsread для чтения электронных таблиц размером 6000x2700 (файл xlsx).

У меня есть два вопроса:

Во-первых, когда я использую что-то вроде

[num,txt,~]=xlsread(input_file,input_sheet,'A1:CYY6596')

Matlab продолжает показывать "занят" и теряет ответ (хотя я могу открыть его в Excel в течение 30 секунд).

Есть ли решение, если я не хочу перебирать диапазоны файла xlsx? Другими словами, могу ли я просто сбросить электронную таблицу такого размера в matlab с помощью xlsread?

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

Итак, мой второй вопрос: есть ли способ определить последний столбец таблицы, не читая всю таблицу?

Благодарю.

РЕДАКТИРОВАТЬ: Однако, если я запускаю аналогичный код, который читает только первые 400 столбцов ("A1:RY6596") электронной таблицы, такой проблемы не возникает.

2 ответа

Какую версию Matlab вы используете? Matlab имеет проблему для загрузки файла BIX Excell. преобразовать Excell в CSV и использовать M = CSVread(имя файла). Вы также можете попробовать конвертировать.xlsx в.xls.

Вы можете попробовать инструмент в обмене файлами

Другие вопросы по тегам