Как мне создать функцию и добавить к ней заголовки, используя Matlab? - PullRequest
0 голосов
/ 04 мая 2018

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

Вот что у меня есть:

function x = myfunct(R,I)

  v=I.*R;

  p=v.*I;

  x=([I', v', p']);

end

Например, я хочу ввести:

R=[1,2,3,4,5,6,7];
I=[1,2,3,4,5,6,7]; 

и иметь такие столбцы с заголовком на каждом.

 5.0000    1.0700    5.3500   
 4.0000    1.3300    5.3200    
10.0000    1.3300   13.3000   
 6.0000    0.2600    1.5600    
12.0000    0.5600    6.7200    
 7.0000   -0.3000   -2.1000    
 4.0000   -0.3000   -1.2000

Ваша помощь очень ценится!

Ответы [ 2 ]

0 голосов
/ 04 мая 2018

Я бы пошел в этом случае на вызов array2table , не забывая указать параметр VariableNames (массив ячеек векторов символов, в котором каждая "строка" представляет имя заголовка столбца) .

function x = myfunct(R,I)
    v = I.*R;
    p = v.*I;
    x = array2table([I', v', p'],'VariableNames',{'A' 'B' 'C'});
end

Результат возвращается в виде таблицы объекта, и кажется, что это именно то, что вы ищете. Вот пример:

A    B      C 
_    __    ___

1     1      1
2     4      8
3     9     27
4    16     64
5    25    125
6    36    216
7    49    343
0 голосов
/ 04 мая 2018

Как подсказал @Cris Luengo, вы должны использовать table. Для вашего случая попробуйте следующие строки:

% Table needs column vectors (or matrices)
R = R';
I = I';

table(R, I, x);

Для большего количества примеров, посмотрите на эту ссылку .

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