2011-10-01 47 views
1

我有隨機矩陣(A),我找到一個結果,我想以後用我的代碼如何使用(從命令窗口)的答案代碼

A=randint(5,7,[1,9]) 
ans A = 

    8  1  2  2  6  7  7 
    9  3  9  4  1  7  1 
    2  5  9  9  8  4  3 
    9  9  5  8  9  6  1 
    6  9  8  9  7  2  1 

我怎麼能現在得到:

A = [8,1,2,2,6,7,7;9,3,9...7,2,1]; 

無需自己輸入。

回答

0

就想到了另一種方式。你的目標是在你的腳本中有A - 對嗎?

您只需將其粘貼如下:

A = [ 
    8  1  2  2  6  7  7 
    9  3  9  4  1  7  1 
    2  5  9  9  8  4  3 
    9  9  5  8  9  6  1 
    6  9  8  9  7  2  1 
] 

(注意括號)

它會評估你原來的矩陣。

+0

很酷,這是可行的!謝謝。 – kojikurac

0

使字符串自己:

Str = ['[' sprintf('%i',A(1)) sprintf(',%i',A(2:end)) ']'] 

注意這個字符串不包含任何;在你的榜樣。所以當你評估它時,你會得到一個1x35向量(而不是原來的5x7矩陣)

所以最簡單的方法來解決這個問題將是評估字符串後添加。

A = reshape(A,5,7) 

它看起來像

B = [.... 
B = reshape(B,5,7) 
+0

使用我進入你所寫的內容與Matlab報告意外Matlab的表達 – kojikurac

+0

我明白了。忘了支架。這就是當你沒有在家裏的matlab你的意見:) – bdecaf

+0

可以請你重新輸入它。我不知道你的意思。謝謝 – kojikurac

1

MATLAB有一個函數:MAT2STR

>> A = randi([1,9],[5,7]); 
>> mat2str(A) 
ans = 
[5 5 7 5 3 2 5;5 6 5 3 8 4 1;9 8 8 1 7 9 6;1 5 5 1 8 6 3;3 4 5 8 9 9 5] 

這是適用於EVAL