Links
🥴

Karışık Notlar

Matrix İşlemleri

A, B, C gibi semboller matrix belirtir.
1e-7 == 0.0000001 # True (10 ^ -7)
1e+4 == 1000 # True (10^4)
A = (A < 5) # 5'ten küçük ise true
np.mean(A) # Ortalama A'nın değeri (true ya da false)
A = A[A > 5] # 5 ten büyük olanları alma
# Maskeleme (5'ten küçük olanlar sıfırlanır)
A = np.multiply(A, A < 5)

Jupyter Notları

  • ALT'a basılı tutarak sütun seçimi yapabilirsin
  • ALT GR'e basılı tutarak birden fazla imleç ekleyebilirsin
  • SHIFT'e basılı tutarak yön tuşları ile metin seçimi yapabilrisin

Temel Özellikleri

  • Matematiksel (vektör tabanlı) işlemler için kaçınılmazdır
  • Python için SIML (single instruction multiple ...) yapısını kullanır
  • Single thread değil multi thread çalışır. (multiprogramming)
  • Optimize edilmiştir ve for döngülerinden 300 kata kadar daha hızlıdır

Temel Fonksiyonlar

import numpy as np
np.sum(<V>, <V>) # Vektörel toplama
np.dot(<V>, <V>) # Vektörel çarpma
np.exp(<V>, <V>) # Vektörel e^
np.log(<V>, <V>) # Vektörel log
np.max(<V>, <V>) # Vektörel en yüksek değeri bulma
np.min(<V>, <V>) # Vektörel min değeri bulma
np.mean(<V>) # Vektörel ortalama alma
np.where(<koşul>, <true>, <false>) # Vektörel If-else

IF-Else Yapısı

One IF-ELIF

Approach #1 One approach:
keep_mask = X==50
out = np.where(X>50,0,1)
out[keep_mask] = 50
Approach #2 Alternatively, for in-situ edit:
replace_mask = X!=50
X[replace_mask] = np.where(X>50,0,1)[replace_mask]
# Or (X<=50).astype(int) in place of np.where(X>50,0,1)
Code-golf? If you actually want to play code-golf/one-liner:
(X<=50)+(X==50)*49

Multiple IF-ELIFs

Approach #1:
For a bit more generic case involving more if-elif parts, we could make use of np.searchsorted -
out_X = np.where(X<=40,0, np.searchsorted([40,50,60,70,80,90], X)+3)
Kaynak

Harici Kaynaklar