Bir Matris ile Başka Bir Matris Oluşturma
Oluşturduğumuz bir matrisin belli satır ve sütunlarını kullanarak başka bir matris oluşturulabilir, aşağıdaki örnekleri inceleyin.
A matrisimiz aşağıdaki gibidir.
|
1 2 3 4 5 6 7 8 9 10 11 |
>> A = [32 34 2 77 11 23 5 -2 90 23 -15 7 56 4 41 -1] A = 32 34 2 77 11 23 5 -2 90 23 -15 7 56 4 41 -1 |
bir B matrisi oluşturalım, A( : , 3 ) virügülün sol tarafı satır ve satır kısmında : işareti var bu durum tüm satırları al demek, virgülün sağ tarafı sütun kısmı burda 3 sayısı var buda sadece 3. sütunu dahil et demektir.
|
1 2 3 4 5 6 7 8 |
>> B = A( : , 3 ) B = 2 5 -15 41 |
başka bir örnekte sütun kısmına 2:4 diyelim , bu işlem 2. 3. 4. sütunları dahil et demektir.
|
1 2 3 4 5 6 7 8 |
B = A( : , 2:4) B = 34 2 77 23 5 -2 23 -15 7 4 41 -1 |
yukarıdaki gibi ister sütuna ister satıra x:y şeklinde aralık belirtilebilir şayet istenirse her iki tarafa bu işlem yapılabilir.
|
1 2 3 4 5 6 |
D = A( 1:2 , 3:4) D = 2 77 5 -2 |
ör:
Aşağıda analizi zor olan bir yapıyı inceleyeceğiz.
Bir 4×4 K matrisimiz var bu matris aşağıdaki gibidir.
|
1 2 3 4 5 6 7 8 9 10 11 |
>> format short K = [1.1 0.4 3 6 0.8 0 0.23 0.9 2.5 ] K = 1.1000 0.4000 3.0000 6.0000 0.8000 0 0.2300 0.9000 2.5000 |
Aşağıdaki kodda K matrisinin sütun kısmı;
[3 1 2] dir , matlab arka planda 2 1 3 2 sırası ile hafızada tutar.
3. -> 1. : Matrisin 3. sütununu 1. sütuna yaz
1. -> 2. : Matrisin 1. sütununu 2. sütuna yaz
2. -> 3. : Matrisin 2. sütununu 3. sütuna yaz
sıralaması ile tutulur.
|
1 2 3 4 5 6 7 |
>> A = K(: , [3 1 2]) A = 3.0000 1.1000 0.4000 0 6.0000 0.8000 2.5000 0.2300 0.9000 |
ör:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
>> T = [3 7 8; 5 6 7; 9 8 1] T = 3 7 8 5 6 7 9 8 1 >> T = T(:,[2 3 1]) T = 7 8 3 6 7 5 8 1 9 |
Görsel açıklama : Yapılan değişiklik
1. sütun yerine 2. sütun
2. sütun yerine 3. sütun
3. sütun yerine 1. sütun
şeklindedir.

ör:
|
1 2 3 4 5 6 7 8 |
>> M = [4 11 6 0 ; 8 12 -31 7; 0 23 0 -6; 65 -1 56 9] M = 4 11 6 0 8 12 -31 7 0 23 0 -6 65 -1 56 9 |
yukarıdaki 4×4 matris üzerinde bazı değişikler yapalım.
|
1 2 3 4 5 6 7 8 |
>> M([3 4 7 9 14 1]) = 50 M = 50 11 50 0 8 12 -31 50 50 50 0 -6 50 -1 56 9 |
M matrisinin 3. 4. 7. 9. 14. ve 1. rakamlarını 50 sayısı ile değiştirdik. Sayma sıralaması ( |/|/|/| ) şeklindedir yani yukarıdan aşağı sonra 2.sütunun üstünden aşağı sonra 3. sütunun üstünden aşağı şeklinde gider.
|
1 2 3 4 5 6 7 8 |
>> M([2 4],[1 3])= 0.5 M = 50.0000 11.0000 50.0000 0 0.5000 12.0000 0.5000 50.0000 50.0000 50.0000 0 -6.0000 0.5000 -1.0000 0.5000 9.0000 |
2. ve 4. satırları daireye al , 1. ve 3. sütunları daireye al kesişen bölgelere 0.5 değerini yaz.
ör:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
>> M = [4 11 6 0 ; 8 12 -31 7; 0 23 0 -6; 65 -1 56 9] M = 4 11 6 0 8 12 -31 7 0 23 0 -6 65 -1 56 9 >> M(2, [1:3]) = 4:3:12 M = 4 11 6 0 4 7 10 7 0 23 0 -6 65 -1 56 9 |
Burada M matrisini 2. satırını fakat sütün olarak 1-3 kısımlarına 3 7 10 sayılarını yazdırdık.
Matrislerin Birleşimi ve Rand() Komutu
MATLAB’da rand komutu, 0 ile 1 arasında rastgele sayılar üretir. Varsayılan olarak, birim aralıkta (0,1) arasında uniform (eşit olasılıklı) dağılıma sahip rastgele sayılar üretir.
|
1 |
x = rand; |
- 0 ile 1 arasında rastgele bir sayı üretir.
|
1 |
A = rand(3,2); |
- 3 satır, 2 sütundan oluşan bir matris üretir. Her eleman 0 ile 1 arasında rastgele bir değerdir.
|
1 |
B = 10 + (50-10) * rand(4,4); |
- 4×4 boyutunda, 10 ile 50 arasında rastgele sayıların bulunduğu bir matris oluşturur.
ör:
Satır sayıları aynı olmasına dikkat edin.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
>> x = rand(3,2) x = 0.9340 0.7431 0.6787 0.3922 0.7577 0.6555 >> y = rand(3,4) y = 0.1712 0.2769 0.8235 0.9502 0.7060 0.0462 0.6948 0.0344 0.0318 0.0971 0.3171 0.4387 |
x ve y matrisleri görüldüğü bigi 3×2 ve 3×4 lüktür. Bu matrsileri aşağıda birleştirelim.
|
1 2 3 4 5 6 7 |
>> birMatris = [x y ] birMatris = 0.9340 0.7431 0.1712 0.2769 0.8235 0.9502 0.6787 0.3922 0.7060 0.0462 0.6948 0.0344 0.7577 0.6555 0.0318 0.0971 0.3171 0.4387 |
Not: Sütun olarak alt alta eklemek için [x ; y] şeklinde yapılır fakat bu sefer sütun sayılarının aynı olması gerekiyor yani bu x ve y matrisi alt alta gelemez.
Matris Büyüklükleri
| Komut | Açıklama |
|---|---|
| size(A) | A matrisinin satır ve sütun sayısı hakkında bilgi verir. İlk sayı satır sayısını, ikinci sayı ise sütun sayısını verir. |
| [m,n] = size(A) | A matrisinin satır sayısı m, sütun sayısı ise n değişkenine atanır. |
| b = size(A,1) | A matrisinin satır sayısı b adlı değişkene atanır ve sütun sayısı ile ilgilenilmez. |
| r = size(A,2) | A matrisinin sütun sayısı r adlı değişkene atanır, satır sayısı ile ilgilenilmez. |
| t = length(A) | A matrisinde satır veya sütun sayısından büyük olan sayı t değişkenine atanır. |
| t = numel(A) | A matrisinde veya vektöründeki toplam eleman sayısını bulur ve t değişkenine atar. prod(size(A)) ile aynı işlemi yapar. |
Örnek Kullanımlar:
|
1 2 3 4 5 6 |
>> A=[2,1,6;8,5,4;2,7,9]; >> size(A) ans = 3 3 |
|
1 2 3 4 5 6 7 |
>> B=[1,20,35;9,5,2;4,8,7;1,8,2]; >> [x,y] = size(B) x = 4 y = 3 |
|
1 2 3 4 5 |
>> C=[-1,2,4;3,5,2;1,3,6;1,8,2]; >> w = size(C,1) w = 4 |
|
1 2 3 4 5 |
>> D=[1,-2,5;-4,2,6;-7,2,9;0,-11,2]; >> z = size(D,2) z = 3 |
|
1 2 3 4 |
>> t = numel(A) t = 9 |
| Komut | Açıklama |
|---|---|
| A = zeros(m) | m*m boyutunda sıfır elemanlarından oluşan bir A matrisi oluşturur. |
| B = zeros(x,y) | x*y boyutunda sıfır elemanlarından oluşan bir B matrisi oluşturur. |
| C = zeros(size(B)) | B matrisi ile aynı boyutta fakat tüm elemanları sıfır olan bir C matrisi oluşturur. |
Örnek Kullanımlar:
|
1 2 3 4 5 |
>> A = zeros(2) A = 0 0 0 0 |
|
1 2 3 4 5 |
>> B = zeros(2,2) B = 0 0 0 0 |
|
1 2 3 4 5 6 |
>> W = [-1,0,3;1,5,3]; >> C = zeros(size(W)) C = 0 0 0 0 0 0 |
| Komut | Açıklama |
|---|---|
| X = ones(a) | a*a boyutunda 1 elemanlarından oluşan bir X matrisi oluşturur. |
| F = ones(x,y) | x*y boyutunda 1 elemanlarından oluşan bir F matrisi oluşturur. |
| Q = ones(size(R)) | R matrisi ile aynı boyutta fakat tüm elemanları 1 olan bir Q matrisi oluşturur. |
T = eye(m, n) m*n boyutunda, köşegen elemanları 1, diğer elemanları 0 olan bir matris oluşturur. Bu komut, aynı zamanda birim matris oluşturmak için de kullanılır.
Aşağıdaki kodda bir matrisin arka plandaki sıralanışını inceleyelim.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
>> M = [9 8 7 6; 5 4 3 2; 15 25 35 45] M = 9 8 7 6 5 4 3 2 15 25 35 45 >> M(:) ans = 9 5 15 8 4 25 7 3 35 6 2 45 |
Şimi bu matrisi tekrar eski haline getirelim, bunun için reshape(M,a,b) komutunu kullanacağız.
N matrisinin elemanlarını a satır ve b sütun matrisi olarak sırala.
– axb : 3×4 : 12 yani yeniden oluşturmak için axb:12 olacak şekilde değerler verilir.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
K = reshape(M,3,4) K = 9 8 7 6 5 4 3 2 15 25 35 45 >> T = reshape(M,2,6) T = 9 15 4 7 35 2 5 8 25 3 6 45 |
MATLAB’da Matrisin Karesi ve Eleman Bazında Karesi
Bu örnekte, MATLAB’da bir matrisin karesinin nasıl alındığı ve eleman bazında karesinin nasıl hesaplandığı gösterilmektedir.
1. Matris Tanımlama
Öncelikle W adında bir matris oluşturulmuştur:
|
1 |
>> W = [0 1; 4 5] |
Bu işlem sonucunda W şu şekilde oluşur:
|
1 2 3 |
W = 0 1 4 5 |
2. Matrisin Karesi (W^2)
|
1 |
>> Q = W^2 |
Burada W^2, matris çarpımı anlamına gelir. Matris çarpımı kurallarına göre hesaplanır:
|
1 2 3 4 5 6 7 |
Q = W * W (0*0 + 1*4) (0*1 + 1*5) (4*0 + 5*4) (4*1 + 5*5) Q = 4 5 20 29 |
Not: W^2 işlemi, matris çarpımını ifade eder, yani W matrisini kendisiyle çarpar.
3. Eleman Bazında Karesi (W.^2)
|
1 |
>> X = W.^2 |
Bu işlemde .^2 operatörü kullanılmıştır. Bu, her bir elemanın karesini almak anlamına gelir. Yani matrisin bütün elemanları tek tek karesine alınır:
|
1 2 3 4 5 6 7 |
X = 0^2 1^2 4^2 5^2 X = 0 1 16 25 |
4. Önemli Fark
Sonuçlar incelendiğinde W^2 ile W.^2 işlemlerinin farklı sonuçlar verdiği gözlemlenir:
W^2→ Matris çarpımı kurallarına göre hesaplanır.W.^2→ Her elemanın karesi ayrı ayrı alınır.
Bu, MATLAB’da matris işlemleriyle eleman bazlı işlemlerin nasıl farklı sonuçlar verdiğini gösteren önemli bir farktır.
Matrislerde Toplama ve Çıkarma İşlemi
İki matrisin toplanabilmesi veya birbirinden çıkarılabilmesi için, boyutlarının aynı olması gerekmektedir. Yani, satır ve sütun sayıları eşit olmalıdır.
Matrislerin toplanması veya çıkarılması, aynı indise sahip elemanların kendi aralarında toplanması veya çıkarılması ile gerçekleşir.
Matematiksel Gösterim:

Örnek : Matris Toplama
Öncelikle, A ve B adında iki matris oluşturuyoruz ve bu iki matrisi topluyoruz:
|
1 2 3 4 5 6 7 8 |
A = [3 5 -2; 4 1 7]; B = [1 -3 6; 2 8 0]; C = A + B C = 4 2 4 6 9 7 |
Aynı mantıkta çıkartma işlemi için düşünülebilir.
Matris Çarpma Kuralları
-
Çarpılabilirlik Şartı:
- İlk matrisin sütun sayısı, ikinci matrisin satır sayısına eşit olmalıdır.
- Eğer A matrisinin boyutu m×n ve matrisinin boyutu n×pn ise, C=A×B çarpımının boyutu m×p olacaktır.
-
Matris Çarpımı Komutatiftir (Değişmeli) Değildir:
- A×B≠B×A
- Eğer A×B işlemi tanımlıysa bile, B×A işlemi tanımlı olmayabilir veya farklı bir sonuç üretebilir.
Örnek : Matris Çarpma
İlk matrisin sütun sayısı, ikinci matrisin satır sayısına eşit olduğu için çarpma işlemi yapılabilir.
|
1 2 3 4 5 6 7 8 |
>> A = [2 3; 1 4; 0 5]; % 3x2 boyutunda bir matris >> B = [1 2 3; 4 5 6]; % 2x3 boyutunda bir matris >> C = A * B % Matris çarpımı C = 14 19 24 17 22 27 20 25 30 |
Açıklama:
Amatrisi 3×2Bmatrisi 2×3- Çarpım sonucu
Cmatrisi 3× boyutunda olacaktır.
MATLAB’da Rank ve Matris Tersi İşlemleri
| Komut | Açıklama |
|---|---|
rank(X) |
X matrisinin rank’ını (bağımsız satır sayısını) bulur. |
inv(X) |
Eğer X matrisi tekil değilse, X matrisinin tersini hesaplar. Eğer X tekil ise, MATLAB hata mesajı verir. MATLAB’da bir matrisin tersi X^(-1) işlemi ile de hesaplanabilir. |
det(A)A matrisinin determinantını hesaplar.
Örnek :
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
>> A = [3,4,2; 1,-1,5; 7,0,6]; >> rank(A) ans = 3 >> B = inv(A) B = -0.0536 -0.2143 0.1964 0.2589 0.0357 -0.1161 0.0625 0.2500 -0.0625 |

