Как экспортировать символьную матрицу в Excel? - PullRequest
0 голосов
/ 16 ноября 2018

Я хочу вычислить матрицу с символическими записями и экспортировать матрицу в файл Excel.

Подход:

syms x_1 y_1
A_sym = sym(zeros(2,2)); 
A_sym(1,1) = x_1; 
A_sym(2,1) = x_1 * y_1
A_sym(2,2) = y_1;

Я пытался использовать функцию xlswrite ('test.xls', A_sym, 'A1: C5'), но она почему-то не предназначена для символических выражений, и я получаю следующую ошибку:

Входные данные должны быть числовым, ячейочным или логическим массивом.

После этого я попытался типизировать содержимое моей матрицы в char и снова экспортировать его:

 B = char(A); 
 xlswrite('test.xls',B,'A1:C5');

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

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

У кого-нибудь есть хорошее решение?

1 Ответ

0 голосов
/ 16 ноября 2018

Если вам нужен вывод на основе текста, то вы на правильном пути, но вам нужно делать то, что вы делаете для элемента матрицы .

for ii=1:size(A_sym,1)
   for jj=1:size(A_sym,2)
      B{ii,jj}=char(A_sym(ii,jj));
   end
end

xlswrite('test.xls',B);

Это поместит char версию символьной матрицы с таким же размером в Excel (в данном случае 2x2)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...