From d1e9b6ce22fcae899a452377f48803d4700284ea Mon Sep 17 00:00:00 2001 From: furkanturan8 Date: Fri, 28 Feb 2025 18:43:25 +0300 Subject: [PATCH] 001_Python_NumPy.ipynb and 002_Python_NumPy_Array_Part1.ipynb files were translated into Turkish --- translations/Turkish/001_Python_NumPy.md | 169 ++++++++++ .../002_Python_NumPy_Array_Part1.ipynb | 302 ++++++++++++++++++ 2 files changed, 471 insertions(+) create mode 100644 translations/Turkish/001_Python_NumPy.md create mode 100644 translations/Turkish/002_Python_NumPy_Array_Part1.ipynb diff --git a/translations/Turkish/001_Python_NumPy.md b/translations/Turkish/001_Python_NumPy.md new file mode 100644 index 0000000..ba4286e --- /dev/null +++ b/translations/Turkish/001_Python_NumPy.md @@ -0,0 +1,169 @@ +# Python NumPy Kütüphanesi Türkçe Dokümantasyonu + +Bu ders serisindeki tüm içerikler Dr. Milan Parmar tarafından hazırlanmıştır ve [GitHub](https://github.com/milaan9/09_Python_NumPy_Module) adresinde mevcuttur. + +## NumPy Nedir? + +NumPy ('Numerical Python'), Python'da bilimsel hesaplama için temel açık kaynak kütüphanesidir. +Python için bir Lineer Cebir Kütüphanesidir ve Python ile Finans için çok önemlidir. +Python'da matematiksel ve istatistiksel işlemler yapmak için çok kullanışlı bir kütüphanedir. +Yüksek performanslı çok boyutlu bir dizi nesnesi ve bu dizilerle çalışmak için araçlar sağlar. + +## Neden NumPy Kullanmalıyız? + +- Bellek verimliliği sağlar (büyük veri setlerini daha kolay işler) +- Matris çarpımı ve yeniden şekillendirme işlemleri için çok uygundur +- Hızlıdır (TensorFlow ve Scikit-learn arka planda NumPy kullanır) + +## NumPy'yi İçe Aktarma + +```python +import numpy as np +``` + +## Temel NumPy İşlemleri + +### 1. Dizi Oluşturma +```python +# 1D dizi +np.array([1,2,3]) + +# 2D dizi +np.array([(1,2,3),(4,5,6)]) + +# Aralık dizisi +np.arange(başlangıç,bitiş,adım) +``` + +### 2. Yer Tutucular +```python +# Eşit aralıklı değerler +np.linspace(0,2,9) + +# Sıfır dizisi +np.zeros((1,2)) + +# Bir dizisi +np.ones((1,2)) + +# Rastgele dizi +np.random.random((5,5)) + +# Boş dizi +np.empty((2,2)) +``` + +### 3. Dizi Özellikleri + +| Özellik | Açıklama | +|---------|----------| +| `array.shape` | Boyutlar (Satırlar,Sütunlar) | +| `len(array)` | Dizinin Uzunluğu | +| `array.ndim` | Dizi Boyut Sayısı | +| `array.dtype` | Veri Türü | +| `array.astype(type)` | Veri Türüne Dönüştürme | +| `type(array)` | Dizi Türü | + +### 4. Dizi İşlemleri + +#### Kopyalama/Sıralama: +```python +# Dizinin kopyasını oluşturur +np.copy(array) + +# Dizinin derin kopyasını oluşturur +other = array.copy() + +# Diziyi sıralar +array.sort() + +# Dizinin eksenini sıralar +array.sort(axis=0) +``` + +### 5. Dizi Manipülasyonu + +#### Eleman Ekleme/Çıkarma: +```python +# Diziye eleman ekler +np.append(a,b) + +# Diziye eksen 0 veya 1'de eleman ekler +np.insert(array, 1, 2, axis) + +# Diziyi yeniden boyutlandırır +np.resize((2,4)) + +# Diziden eleman siler +np.delete(array,1,axis) +``` + +#### Dizileri Birleştirme: +```python +# Diziyi alt dizilere böler +np.concatenate((a,b),axis=0) + +# Dikeyde birleştirme +np.vstack((a,b)) + +# Yatayda birleştirme +np.hstack((a,b)) +``` + +### 6. Dilimleme ve Alt Kümeleme + +| İşlem | Açıklama | +|-------|----------| +| `array[i]` | i indeksindeki 1d dizi | +| `array[i,j]` | [i][j] indeksindeki 2d dizi | +| `array[i<4]` | Boolean indeksleme | +| `array[0:3]` | 0,1,2 indeksli elemanlar | +| `array[0:2,1]` | 0 ve 1. satırdaki 1. sütun elemanları | +| `array[:1]` | 0. satır elemanları | +| `array[1:2, :]` | 1. satır elemanları | +| `array[ : :-1]` | Diziyi ters çevirir | + +### 7. Matematiksel İşlemler + +#### Temel İşlemler: +| İşlem | Açıklama | +|-------|----------| +| `np.add(x,y)` | Toplama | +| `np.subtract(x,y)` | Çıkarma | +| `np.divide(x,y)` | Bölme | +| `np.multiply(x,y)` | Çarpma | +| `np.sqrt(x)` | Karekök | +| `np.sin(x)` | Sinüs | +| `np.cos(x)` | Kosinüs | +| `np.log(x)` | Doğal logaritma | +| `np.dot(x,y)` | Nokta çarpımı | +| `np.roots([1,0,-4])` | Polinom kökleri | + +#### Karşılaştırma Operatörleri: +| Operatör | Açıklama | +|----------|-----------| +| `==` | Eşit | +| `!=` | Eşit değil | +| `<` | Küçüktür | +| `>` | Büyüktür | +| `<=` | Küçük veya eşit | +| `>=` | Büyük veya eşit | +| `np.array_equal(x,y)` | Dizi bazında karşılaştırma | + +### 8. İstatistiksel İşlemler + +#### Temel İstatistik: +| İşlem | Açıklama | +|-------|----------| +| `np.mean(array)` | Ortalama | +| `np.median(array)` | Medyan | +| `array.corrcoef()` | Korelasyon Katsayısı | +| `np.std(array)` | Standart Sapma | + +#### Diğer İşlemler: +| İşlem | Açıklama | +|-------|----------| +| `array.sum()` | Dizi toplamı | +| `array.min()` | Minimum değer | +| `array.max(axis=0)` | Eksen bazında maksimum | +| `array.cumsum(axis=0)` | Kümülatif toplam | \ No newline at end of file diff --git a/translations/Turkish/002_Python_NumPy_Array_Part1.ipynb b/translations/Turkish/002_Python_NumPy_Array_Part1.ipynb new file mode 100644 index 0000000..1211cbb --- /dev/null +++ b/translations/Turkish/002_Python_NumPy_Array_Part1.ipynb @@ -0,0 +1,302 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Python NumPy Dizisi (Array)\n", + "\n", + "Bu ders serisindeki tüm IPython Not Defterleri Dr. Milan Parmar tarafından hazırlanmıştır ve GitHub'da mevcuttur.\n", + "\n", + "## NumPy Dizisi Nedir?\n", + "\n", + "Bir numpy dizisi, aynı türdeki değerlerin bir ızgarasıdır ve negatif olmayan tamsayıların bir demeti ile indekslenir. Boyutların sayısı dizinin derecesidir; bir dizinin şekli, her boyut boyunca dizinin boyutunu veren bir tamsayı demetidir.\n", + "\n", + "NumPy dizisi, satır ve sütunlar şeklinde güçlü bir N-boyutlu dizi nesnesidir. NumPy dizilerini iç içe geçmiş Python listelerinden başlatabilir ve elemanlarına erişebiliriz.\n", + "\n", + "## NumPy Dizi Türleri:\n", + "[Görsel: array.png]\n", + "\n", + "## NumPy Dizisi Oluşturma\n", + "\n", + "NumPy'de dizi oluşturmanın en basit yolu Python Listesi kullanmaktır.\n", + "\n", + "### NumPy Kütüphanesini Yükleme\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "my_list = [1,2,3,4]\n", + "my_list" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "[1, 2, 3, 4]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Pratikte, bir Python Listesi tanımlamaya gerek yoktur. İşlem birleştirilebilir.\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "numpy_array_from_list = np.array(my_list)\n", + "numpy_array_from_list" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "array([1, 2, 3, 4])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "NOT: NumPy dokümantasyonu dizi oluşturmak için `np.ndarray` kullanımını belirtir. Ancak, bu önerilen yöntemdir.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Ayrıca bir Tuple'dan da numpy dizisi oluşturabilirsiniz.\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "my_list2 = np.array (range (1,5))\n", + "my_list2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "array([1, 2, 3, 4])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## NumPy Dizi Temelleri\n", + "\n", + "NumPy dizilerini iç içe geçmiş Python listelerinden başlatabilir ve elemanlara köşeli parantez `[]` kullanarak erişebiliriz.\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "a = np.array([1,2,3]) # Create a 1D array\n", + "print(a) \n", + "print(type(a)) # Prints \"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "[1 2 3]\n", + "
\n", + "" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "b = np.array([[9.0,8.0,7.0],[6.0,5.0,4.0]])\n", + "print(b)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "[[9. 8. 7.]
\n", + " [6. 5. 4.]]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "my_matrix = [[1,2,3],[4,5,6],[7,8,9]]\n", + "my_matrix\n", + "np.array(my_matrix)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "array([[1, 2, 3] ,
\n", + " [4, 5, 6],
\n", + " [7, 8, 9]])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "a.ndim # # Get Dimension: 1" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "b.shape # Get Shape: (2,3)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "a.itemsize # Get Item Size: 4" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "b.itemsize # Get Item Size: 8" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Get total size\n", + "a.nbytes # a.nbytes = a.size * a.itemsize" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Get number of elements\n", + "a.size # 3" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c = np.array([[True, False], [False, True]])\n", + "c" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "array([[ True, False],\n", + " [False, True]])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(c.size) # 4\n", + "print(c.shape) # (2,2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "a = np.array([1, 2, 3]) # Create a 1d array\n", + "print(a)\n", + "print(type(a)) # Prints \"\"\n", + "print(a.shape) # Prints \"(3,)\"\n", + "print(a[0], a[1], a[2]) # Indexing with 3 elements. Prints \"1 2 3\"\n", + "a[0] = 5 # Change an element of the array\n", + "print(a) # Prints \"[5, 2, 3]\"\n", + "\n", + "b = np.array([[1,2,3],[4,5,6]]) # Create a 2d array\n", + "print(b)\n", + "print(b.shape) # Prints \"(2, 3)\"\n", + "print(b[0, 0], b[0, 1], b[1, 0]) # Prints \"1 2 4\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "[1 2 3]
\n", + "
\n", + "(3,)
\n", + "1 2 3
\n", + "[5 2 3]
\n", + "[[1 2 3]
\n", + "  [4 5 6]]
\n", + "(2, 3)
\n", + "1 2 4
" + ] + } + ], + "metadata": { + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}