0Pricing
R Academy · Ders

Matris Aritmetiği ve İşlemleri

Öğe bazında ve matris çarpımı, toplama ve çıkarma işlemleri gerçekleştirin.

Matris Aritmetiği ve İşlemleri, CoddyKit'te ücretsiz bir R Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, R Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. R Academy kursu toplamda 4 dersten oluşur.

Öğe Bazlı ve Matris İşlemleri

R, öğe bazlı işlemler (+, -, *, / kullanılarak) ile gerçek matris işlemleri (%*% kullanılarak) arasında ayrım yapar. Doğru doğrusal cebir işlemleri için bu farkı anlamanız kritik önem taşır.

A <- matrix(c(1,2,3,4), nrow = 2)
B <- matrix(c(5,6,7,8), nrow = 2)
cat('A:
'); print(A)
cat('B:
'); print(B)

# Element-wise multiply
cat('A * B (element-wise):
'); print(A * B)
# Matrix multiply
cat('A %*% B (matrix mult):
'); print(A %*% B)

Öğe Bazlı Toplama ve Çıkarma

Aynı boyutlara sahip iki matris arasındaki + ve - işlemleri karşılık gelen öğeleri toplar veya çıkarır. Bunlar tamamen öğe bazlı işlemlerdir.

# Monthly revenue vs target (in thousands)
revenue <- matrix(c(120,135,110,98, 145,160,132,115),
                  nrow = 2, byrow = TRUE)
target  <- matrix(c(130,130,130,130, 150,150,150,150),
                  nrow = 2, byrow = TRUE)

deviation <- revenue - target
cat('Revenue vs Target deviation:
')
print(deviation)
cat('Above target?:
')
print(revenue >= target)

Öğe Bazlı Bölme ve Çarpma

Benzer şekilde, eşit boyuttaki matrisler arasındaki * ve / işlemleri öğe öğe gerçekleştirilir. Bu, matrisleri öğe bazında ölçeklendirmek, normalleştirmek veya birleştirmek için yararlıdır.

# Scale a matrix by another (element-wise)
prices <- matrix(c(10, 20, 15, 25), nrow = 2)
quantities <- matrix(c(5, 3, 8, 2), nrow = 2)

total_cost <- prices * quantities
cat('Total cost per item:
')
print(total_cost)

# Normalise to row maximum
max_prices <- matrix(rep(apply(prices, 1, max), 2), nrow = 2)
norm_prices <- prices / max_prices
cat('Normalised prices:
')
print(norm_prices)

Matrislerde Skaler İşlemler

Standart aritmetik işleçlerini kullanarak bir skaler (tek sayı) işlemini matrisin her öğesine uygulayabilirsiniz. Skaler, matris boyutlarına uyacak şekilde tekrarlanır.

m <- matrix(c(10, 20, 30, 40, 50, 60), nrow = 2, ncol = 3)
cat('Original:
'); print(m)

cat('m + 5:
');  print(m + 5)
cat('m * 2:
');  print(m * 2)
cat('m / 10:
'); print(m / 10)
cat('m ^ 2:
');  print(m ^ 2)

Gerçek Matris Çarpımı %*%

A %*% B, doğrusal cebirdeki matris çarpımını gerçekleştirir. Bunun çalışması için A'daki sütun sayısı B'deki satır sayısına eşit olmalıdır. Sonucun boyutları (A'nın satırları) x (B'nin sütunları) şeklindedir.

# 2x3 times 3x2 = 2x2
A <- matrix(c(1,2,3, 4,5,6), nrow = 2, byrow = TRUE)
B <- matrix(c(7,8, 9,10, 11,12), nrow = 3, byrow = TRUE)
cat('A (2x3):
'); print(A)
cat('B (3x2):
'); print(B)
cat('A %*% B (2x2):
'); print(A %*% B)

rowSums() ve colSums()

rowSums(m) her satırın toplamını, colSums(m) ise her sütunun toplamını hesaplar. Matrisin boyut adları varsa her ikisi de adlandırılmış vektörler döndürür.

sales <- matrix(
  c(120,135,110,98,  145,160,132,115,  88,95,102,78),
  nrow = 3, byrow = TRUE,
  dimnames = list(c('Q1','Q2','Q3'), c('Jan','Feb','Mar','Apr'))
)
cat('Sales matrix:
'); print(sales)
cat('Quarterly totals:', rowSums(sales), '
')
cat('Monthly totals: ', colSums(sales), '
')

rowMeans() ve colMeans()

rowMeans(m) ve colMeans(m) sırasıyla her satırın ve sütunun ortalamasını döndürür. Bu yaygın görev için apply() ile mean() uygulamaktan daha hızlıdırlar.

exam_scores <- matrix(
  c(88,92,75,81, 79,85,90,73, 95,78,82,88),
  nrow = 3, byrow = TRUE,
  dimnames = list(c('Alice','Bob','Carol'), c('Math','Sci','Eng','Hist'))
)
cat('Student averages:
')
print(rowMeans(exam_scores))
cat('Subject averages:
')
print(colMeans(exam_scores))

Matrislerde Karşılaştırma İşlemleri

Matrislere uygulanan karşılaştırma işleçleri (==, >, <= vb.), aynı boyutlara sahip bir mantıksal matris döndürür. Daha sonra bu maskeyi alt kümeleme veya sayma için kullanabilirsiniz.

scores <- matrix(c(88,45,92,61,73,55,84,79), nrow = 2)
cat('Scores:
'); print(scores)

# Which elements pass?
passing_mask <- scores >= 60
cat('Passing mask:
'); print(passing_mask)
cat('Number passing:', sum(passing_mask), '
')
cat('Passing scores:', scores[passing_mask], '
')

Özel Satır/Sütun İşlemleri için apply()

apply(m, MARGIN, FUN), bir işlevi satırlara (MARGIN=1) veya sütunlara (MARGIN=2) uygular. rowSums/colMeans işlevlerinin ötesinde özel bir toplulaştırmaya ihtiyaç duyduğunuzda kullanın.

m <- matrix(c(3,1,4,1,5,9,2,6,5,3,5,8), nrow = 3)
cat('Matrix:
'); print(m)

# Max of each row
cat('Row max:  ', apply(m, 1, max), '
')
# Range of each column
cat('Col range:
')
print(apply(m, 2, range))
# Custom: count values > 4 per row
cat('Values > 4 per row:', apply(m, 1, function(x) sum(x > 4)), '
')

Bir Vektörü Satırlara Yayma

Bir matrise vektör eklediğinizde veya matrisi bir vektörle çarptığınızda R, vektörü matrisin uzunluğuna uyacak şekilde döngüsel olarak yeniden kullanır. Yeniden kullanım sütun sütun gerçekleşir; satır bazlı işlemler istiyorsanız bu beklenmedik sonuçlara yol açabilir.

m <- matrix(c(10,20,30, 40,50,60), nrow = 2)
cat('Matrix:
'); print(m)

# Add a 3-element vector: R recycles column-by-column
v <- c(1, 2, 3)
cat('m + c(1,2,3):
'); print(m + v)

# For row-wise scaling, use sweep()
row_weights <- c(0.5, 2.0)  # scale row 1 by 0.5, row 2 by 2
cat('Row-wise scaled:
'); print(sweep(m, 1, row_weights, '*'))

Aritmetik İşlemler Özeti

R'de temel matris işlemi işlevleri:

  • +, -, *, / — öğe bazlı aritmetik
  • %*% — matris çarpımı (doğrusal cebir)
  • rowSums(), colSums() — satır/sütun toplamları
  • rowMeans(), colMeans() — satır/sütun ortalamaları
  • apply(m, 1, fn) / apply(m, 2, fn) — özel satır/sütun toplulaştırması
  • sweep() — vektörle satır/sütun bazlı işlemler
m <- matrix(c(4,9,16,25), nrow = 2)
cat('Original:
'); print(m)
cat('sqrt (element-wise):
'); print(sqrt(m))
cat('rowSums:', rowSums(m), '
')
cat('colMeans:', colMeans(m), '
')

Hızlı Kontrol

R'de A ve B, 2x2 matrisler olduğunda A * B neyi hesaplar?

Özet: Matris Aritmetiği

Harika çalıştınız! Bu dersten çıkarılacak önemli noktalar:

  • Matrislerde +, -, *, / işlemleri öğe bazlıdır
  • %*% gerçek matris çarpımıdır (satırlar × sütunlar)
  • rowSums(), colSums(), rowMeans(), colMeans() satırlar/sütunlar üzerinde toplulaştırma yapar
  • Karşılaştırma işleçleri aynı şekle sahip mantıksal bir matris döndürür
  • apply(m, 1, fn) bir işlevi satır bazında, apply(m, 2, fn) ise sütun bazında uygular
  • Vektörleştirilmiş satır/sütun ölçeklendirmesi için sweep() kullanın
# Final: compute grade curve (add 5 to all scores, cap at 100)
raw <- matrix(c(88,55,92,73,60,45,78,95), nrow = 2)
curved <- pmin(raw + 5, 100)  # pmin applies min element-wise
cat('Raw:
');    print(raw)
cat('Curved:
'); print(curved)

Sıkça Sorulan Sorular

“Matris Aritmetiği ve İşlemleri” dersi ücretsiz mi?

Evet — “Matris Aritmetiği ve İşlemleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve R Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. R Academy kursu toplamda 4 dersten oluşur.

“Matris Aritmetiği ve İşlemleri” dersinde ne öğreneceğim?

Öğe bazında ve matris çarpımı, toplama ve çıkarma işlemleri gerçekleştirin. R Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

R Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te R Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Matris Aritmetiği ve İşlemleri” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu R Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her R Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. matrix() ile Matris Oluşturma
  2. Matris İndeksleme ve Alt Kümeleme
  3. Matris Aritmetiği ve İşlemleri
  4. Matrisleri Transpoze Etme ve Yeniden Şekillendirme
← R Academy Sayfasına Dön