對於
a(四行五列)矩陣
,a(2:3,1:2:5)
是什麼意思
?
問題補充:能解釋下為什麼是一,三
,五列滿意回答
顯示a的第二行與第三行的第
一、三、五列。因為矩陣後面如果是圓括號,那麼都表示引用,即矩陣元素的位置
,下面是例子
a =1 2 3 4 5
4 5 6 7 8
0 1 4 7 8
0 2 5 8 7
disp(a(2:3,1:2:5))
%3個數字夾著
2個冒號的意思:從
num1
到num3
步長num2
4 6 8
0 4 8
補充問題:能解釋下為什麼是一,三
,五列matlab
定義矩陣的一種方法是
a=s:d:f,s
表示起始值,
d表示增量,
f表示終點值,1:
2:5即為
1,1+2=3,
3+2=
5,不難理解吧,是
matlab
定義矩陣最常用的方法
請問
matlab
中a(k,:)
中的冒號什麼意思
?
a(k,:)冒號是取出第
k行的資料,比如
a =1 2
3 4
5 6
>> a(1,:)
ans =
1 2
>>
請高手指教:matlab中 迴圈語句中x(8,:,i)裡的冒號是什麼意思??
答:
冒號在matlab
裡基本上兩種意思:
(
1)對於矩陣,冒號表示該維度上的所有元素。
a=
1 2 3
4 5 6
7 8 9
a(1,:)表示a
的第一行,所有列。
a(1,:)=[ 1 2 3 ]
(2)
在迴圈語句中,冒號表示
「從什麼開始,間隔多少,到什麼
」
for i=0 : 2 :10
表示的是i從
0開始,每次增長
2,一直到
10,所以迴圈的第一次
i=0,第二次迴圈
i=2,...第6
次i為10
,迴圈結束。相當於
c語言中的
for (i=0;i<=10;i=i+2)
追問
「間隔量
」的位置上。。。。是代表什麼意思呢??
i 是之前已經定好的迴圈步數。
x也是定義好的
0矩陣,
x=zeros(17
,1,samples)
for i=2:1:samples
....
v=v(i)+(x(8,:,i)*v(i));
難道說是代表任何步長??
回答
不是的。這裡的冒號是我說的第乙個意思。
現在你的
x是乙個三維矩陣,你可以理解為
x是乙個長方體,長寬高分別是17,
1,sample
,然後每個
1*1*1
的小立方體裡面,存放著矩陣的乙個元素。見圖。 那
x(8,
:,i)
就是取出這個長方體的長裡面的第
8小格,寬裡面的所有小格,高裡面的第
i小格所對應的那些元素。而由於你的寬裡面總共就只有
1。所以此處不是
「那些元素」而是
「那個元素
」,只有1個!
可想而知,如果寬的總數不是
1,那麼取出的將是這個長方體的乙個細長條,往裡延伸的,想象一下.
************************************
冒號的兩種用法其實很好區分,寫在
for裡面,就是第二種意義,表現為
「用冒號隔開數字」。
寫在矩陣的括號裡面,就是第一種意義,表現為
「把冒號當數字使用,用逗號隔開數字(或冒號)」。
i=uint8(zeros(x,y,3));matlab
語句解析
提問者:
freeciny
| 懸賞分:
10 |
瀏覽次數:
1271次
[x,y]=size(temp);
i=uint8(zeros(x,y,3));
i(:,:,1)=uint8(temp);
i(:,:,2)=uint8(temp);
i(:,:,3)=uint8(temp);
滿意回答
這句看起來像是讀影象的
rgb值。
[x,y]=size(temp);
讀temp
的大小(行數和列數)
i=uint8(zeros(x,y,3));
構造乙個三維矩陣
i(:,:,1)=uint8(temp);uint8
將型別轉換為無符號
8位數,即
256位。與
256色值一致。
i(:,:,2)=uint8(temp);
i(:,:,3)=uint8(temp);
樓上的,人家那三行是賦值操作。你初始化成
0不賦值也沒用啊。
matlab
中的語句
2.^x
中的點是什麼作用?
答:
x.^2
點乘表示
x中的各個元素平方
x^2表示x
向量乘x向量,
是個矩陣
2.^x
和2^x
答案應該是一樣的
標明:
x為陣列
舉個例子:
a=[1 2 3];
b=2.^a
ans
2 4 8
不加「。」運算不成立
matlab
以矩陣作為基本計算單位,因此用
普通運算符號(+、
-、*、
/、^)
連線兩個量時要注意矩陣的運算規則。如
2^x,
表示兩個矩陣作乘方運算就要求乙個為標量,乙個為方陣。而普通運算號前加了「
.」就表示兩個矩陣對應的元素間進行普通運算,而不考慮矩陣的運算規則
,當然兩個矩陣的尺寸要一致,如果其中乙個為標量似乎就不存在這個問題
「
.^」這個叫做點乘
。是分別乘以矩陣裡面元素的意思。這樣得出的結果也是乙個矩陣
Matlab中的冒號
2020 05 02 19 53 02 在進行陣列操作時,冒號若使用得當,能得到簡化操作的作用,大致總結冒號在矩陣操作中的主要作用和使用方法 語句作用 a j a的第j列 a i,a的第i行 a a本身a a的單列 a i j a單列中第i 第j個元素 a i j a的第i j列 a i j,a的第...
Matlab中冒號的使用
matlab冒號的用法總結 1 a b 表示 a,a 1,b a 1 5 a 1 2 3 4 2 當然如果b a不是整數的話,則向量的最後一位數是n a,且n fix b a a 1.2 4.9 a 1.2000 2.2000 3.2000 4.2000 3 上面的前提是ab則會出現空值 a 5 1...
matlab中冒號的用法
matlab中冒號的用法 對於a 四行五列 矩陣,a 2 3,1 2 5 是什麼意思?問題補充 能解釋下為什麼是一,三,五列 滿意回答 顯示a的第二行與第三行的第 一 三 五列。因為矩陣後面如果是圓括號,那麼都表示引用,即矩陣元素的位置,下面是例子 a 1 2 3 4 5 4 5 6 7 8 0 1...