├── .ipynb_checkpoints ├── makine-ogrenmesi-checkpoint.ipynb ├── makine-ogrenmesi-karar-agaclari-checkpoint.ipynb └── makine-ogrenmesi-regresyon-checkpoint.ipynb ├── README.md ├── assets ├── karar-agaclari.jpg ├── linear-regression.png ├── logistic-regression.jpeg └── logistic-regression2.jpg ├── datasets ├── file.csv ├── iris.csv └── myDataFrame.csv ├── final-workshop.ipynb ├── makine-ogrenmesi-karar-agaclari.ipynb ├── makine-ogrenmesi-regresyon.ipynb ├── makine-ogrenmesi.ipynb ├── python-donguler-ve-fonksiyonlar.ipynb ├── python-veri-tipleri-ve-kosullar.ipynb ├── requirements.txt ├── veri-analizi-numpy.ipynb ├── veri-analizi-pandas.ipynb └── veri-analizi-seaborn.ipynb /.ipynb_checkpoints/makine-ogrenmesi-karar-agaclari-checkpoint.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Makine Öğrenmesi Metodları - Karar Ağaçları" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "## 9.4 Karar Ağaçları\n", 15 | "\n", 16 | "A decision tree is one of the supervised machine learning algorithms. This algorithm can be used for regression and classification problems — yet, is mostly used for classification problems. As the name goes, it uses a tree-like model of decisions.\n", 17 | "\n", 18 | "![](karar-agaclari.jpg)" 19 | ] 20 | }, 21 | { 22 | "cell_type": "code", 23 | "execution_count": 2, 24 | "metadata": {}, 25 | "outputs": [ 26 | { 27 | "ename": "SyntaxError", 28 | "evalue": "invalid syntax (, line 2)", 29 | "output_type": "error", 30 | "traceback": [ 31 | "\u001b[0;36m File \u001b[0;32m\"\"\u001b[0;36m, line \u001b[0;32m2\u001b[0m\n\u001b[0;31m Root Node: This attribute is used for dividing the data into two or more sets. The feature attribute in this node is selected based on Attribute Selection Techniques.\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n" 32 | ] 33 | } 34 | ], 35 | "source": [ 36 | "## Terminology\n", 37 | "Root Node: This attribute is used for dividing the data into two or more sets. The feature attribute in this node is selected based on Attribute Selection Techniques.\n", 38 | "\n", 39 | "Branch or Sub-Tree: A part of the entire decision tree is called branch or sub-tree.\n", 40 | "\n", 41 | "Splitting: Dividing a node into two or more sub-nodes based on if-else conditions.\n", 42 | "\n", 43 | "Decision Node: After splitting the sub-nodes into further sub-nodes, then it is called as the decision node.\n", 44 | "\n", 45 | "Leaf or Terminal Node: This is the end of the decision tree where it cannot be split into further sub-nodes.\n", 46 | "\n", 47 | "Pruning: Removing a sub-node from the tree is called pruning." 48 | ] 49 | }, 50 | { 51 | "cell_type": "code", 52 | "execution_count": null, 53 | "metadata": {}, 54 | "outputs": [], 55 | "source": [] 56 | } 57 | ], 58 | "metadata": { 59 | "kernelspec": { 60 | "display_name": "Python 3", 61 | "language": "python", 62 | "name": "python3" 63 | }, 64 | "language_info": { 65 | "codemirror_mode": { 66 | "name": "ipython", 67 | "version": 3 68 | }, 69 | "file_extension": ".py", 70 | "mimetype": "text/x-python", 71 | "name": "python", 72 | "nbconvert_exporter": "python", 73 | "pygments_lexer": "ipython3", 74 | "version": "3.9.1" 75 | } 76 | }, 77 | "nbformat": 4, 78 | "nbformat_minor": 4 79 | } 80 | -------------------------------------------------------------------------------- /.ipynb_checkpoints/makine-ogrenmesi-regresyon-checkpoint.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Makine Öğrenmesi Metodları" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "## 9.1 Regresyon Nedir?\n", 15 | "\n", 16 | "Regresyon analizi, istatistik ve makine öğrenmesindeki en önemli alanlardan biridir. Mevcut birçok regresyon yöntemi vardır. Doğrusal regresyon bunlardan biridir.\n", 17 | "\n", 18 | "Regresyon, değişkenler arasındaki ilişkileri arar. Örneğin, bir şirketin birkaç çalışanını gözlemleyebilir ve maaşlarının deneyim, eğitim düzeyi, rol, çalıştıkları şehir gibi özelliklere nasıl bağlı olduğunu anlamaya çalışabilirsiniz." 19 | ] 20 | }, 21 | { 22 | "cell_type": "markdown", 23 | "metadata": {}, 24 | "source": [ 25 | "## 9.2 Lineer Regresyon\n", 26 | "\n", 27 | "Doğrusal regresyon, muhtemelen en önemli ve yaygın olarak kullanılan regresyon tekniklerinden biridir. En basit regresyon yöntemleri arasındadır. Başlıca avantajlarından biri, sonuçları yorumlama kolaylığıdır.\n", 28 | "\n", 29 | "Bağımsız değişkenler kümesi 𝐱 = (𝑥₁,…, 𝑥ᵣ) üzerinde bazı bağımlı değişkenlerin doğrusal regresyonunu uygularken, burada 𝑟 yordayıcı sayısıdır, 𝑦 ve 𝐱 arasında doğrusal bir ilişki varsayarsınız: 𝑦 = 𝛽₀ + 𝛽₁𝑥₁ + ⋯ + 𝛽ᵣ𝑥ᵣ + 𝜀. Bu denklem, regresyon denklemidir. 𝛽₀, 𝛽₁,…, 𝛽ᵣ regresyon katsayılarıdır ve 𝜀 rastgele hatadır." 30 | ] 31 | }, 32 | { 33 | "cell_type": "markdown", 34 | "metadata": {}, 35 | "source": [ 36 | "### Basit Lineer Regresyon" 37 | ] 38 | }, 39 | { 40 | "cell_type": "markdown", 41 | "metadata": {}, 42 | "source": [ 43 | "Simple or single-variate linear regression is the simplest case of linear regression with a single independent variable, 𝐱 = 𝑥.\n", 44 | "\n", 45 | "![](assets/linear-regression.png)\n", 46 | "\n", 47 | "The estimated regression function (red line) has the equation 𝑓(𝑥) = 𝑏₀ + 𝑏₁𝑥. Your goal is to calculate the optimal values of the predicted weights 𝑏₀ and 𝑏₁ that minimize the sum of squared residuals (SSR) and determine the estimated regression function." 48 | ] 49 | }, 50 | { 51 | "cell_type": "markdown", 52 | "metadata": {}, 53 | "source": [ 54 | "## İçeri Aktarma" 55 | ] 56 | }, 57 | { 58 | "cell_type": "code", 59 | "execution_count": 14, 60 | "metadata": {}, 61 | "outputs": [], 62 | "source": [ 63 | "import numpy as np\n", 64 | "import matplotlib.pyplot as plt\n", 65 | "\n", 66 | "from sklearn.linear_model import LinearRegression" 67 | ] 68 | }, 69 | { 70 | "cell_type": "code", 71 | "execution_count": 15, 72 | "metadata": {}, 73 | "outputs": [], 74 | "source": [ 75 | "from sklearn.datasets import make_regression\n", 76 | "X, y = make_regression(n_samples=100, n_features=1, noise=5)" 77 | ] 78 | }, 79 | { 80 | "cell_type": "code", 81 | "execution_count": 16, 82 | "metadata": {}, 83 | "outputs": [ 84 | { 85 | "data": { 86 | "text/plain": [ 87 | "" 88 | ] 89 | }, 90 | "execution_count": 16, 91 | "metadata": {}, 92 | "output_type": "execute_result" 93 | }, 94 | { 95 | "data": { 96 | "image/png": "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\n", 97 | "text/plain": [ 98 | "
" 99 | ] 100 | }, 101 | "metadata": { 102 | "needs_background": "light" 103 | }, 104 | "output_type": "display_data" 105 | } 106 | ], 107 | "source": [ 108 | "plt.scatter(X, y)" 109 | ] 110 | }, 111 | { 112 | "cell_type": "markdown", 113 | "metadata": {}, 114 | "source": [ 115 | "## Model yaratma" 116 | ] 117 | }, 118 | { 119 | "cell_type": "code", 120 | "execution_count": 17, 121 | "metadata": {}, 122 | "outputs": [], 123 | "source": [ 124 | "model = LinearRegression()\n" 125 | ] 126 | }, 127 | { 128 | "cell_type": "code", 129 | "execution_count": 18, 130 | "metadata": { 131 | "scrolled": true 132 | }, 133 | "outputs": [ 134 | { 135 | "data": { 136 | "text/plain": [ 137 | "LinearRegression()" 138 | ] 139 | }, 140 | "execution_count": 18, 141 | "metadata": {}, 142 | "output_type": "execute_result" 143 | } 144 | ], 145 | "source": [ 146 | "model.fit(X, y)\n" 147 | ] 148 | }, 149 | { 150 | "cell_type": "markdown", 151 | "metadata": {}, 152 | "source": [ 153 | "##  Sopnuçları alma" 154 | ] 155 | }, 156 | { 157 | "cell_type": "code", 158 | "execution_count": 20, 159 | "metadata": {}, 160 | "outputs": [ 161 | { 162 | "name": "stdout", 163 | "output_type": "stream", 164 | "text": [ 165 | "coefficient of determination: 0.4695132985395599\n" 166 | ] 167 | } 168 | ], 169 | "source": [ 170 | "r_sq = model.score(X, y)\n", 171 | "print('coefficient of determination:', r_sq)" 172 | ] 173 | }, 174 | { 175 | "cell_type": "code", 176 | "execution_count": 21, 177 | "metadata": {}, 178 | "outputs": [ 179 | { 180 | "name": "stdout", 181 | "output_type": "stream", 182 | "text": [ 183 | "intercept: 0.036574403976687986\n", 184 | "slope: [5.44409786]\n" 185 | ] 186 | } 187 | ], 188 | "source": [ 189 | "print('intercept:', model.intercept_)\n", 190 | "print('slope:', model.coef_)" 191 | ] 192 | }, 193 | { 194 | "cell_type": "markdown", 195 | "metadata": {}, 196 | "source": [ 197 | "## Tahmin" 198 | ] 199 | }, 200 | { 201 | "cell_type": "code", 202 | "execution_count": 23, 203 | "metadata": {}, 204 | "outputs": [ 205 | { 206 | "name": "stdout", 207 | "output_type": "stream", 208 | "text": [ 209 | "predicted response:\n", 210 | "[ -6.04075636 3.53235644 10.45160252 -0.09021017 -4.24904861\n", 211 | " 6.78857147 -3.67409333 5.26812273 2.87925319 -6.73552899\n", 212 | " -4.48122206 2.85193372 -0.56173181 -5.89797846 -9.29045464\n", 213 | " -3.0680622 4.16261616 -5.49995322 4.59573234 3.19506267\n", 214 | " -2.11928911 0.15859848 -5.30751136 -9.13637482 8.62791999\n", 215 | " -4.58875224 1.3683142 1.86812321 -2.38293407 13.57973339\n", 216 | " 6.99521027 -1.24872816 2.90896307 7.31750463 1.62433157\n", 217 | " -0.42988966 -0.67337219 5.2572538 2.56706244 4.67198462\n", 218 | " 6.17828913 -5.95278203 2.00791537 -2.12308133 3.93345041\n", 219 | " -3.97607202 -0.35139679 11.92656173 -0.77571281 -0.39709873\n", 220 | " 1.98179736 -3.22589431 7.36470217 3.05655591 8.36517202\n", 221 | " 11.62565909 2.46117345 -0.86373287 -0.84367388 -2.21583219\n", 222 | " -3.75627984 -1.22634449 -7.4892331 0.89780426 0.16139435\n", 223 | " 0.37764277 -2.03373753 3.67686469 -1.23325381 2.34605179\n", 224 | " -5.45255073 6.32311378 4.98539279 -2.07433642 -4.68606266\n", 225 | " 9.94712389 -3.02175954 0.70317201 -1.07168328 1.17303701\n", 226 | " 3.25832509 0.40105279 6.63632489 1.64343542 -4.72821558\n", 227 | " 4.92251889 3.13422226 -2.12879024 -0.23110149 -8.76322977\n", 228 | " -1.45365108 -3.97907366 -5.83362248 0.16365856 -11.72481395\n", 229 | " 1.28242407 2.71667399 5.66318896 4.71893356 1.23832121]\n" 230 | ] 231 | } 232 | ], 233 | "source": [ 234 | "X_test, _ = make_regression(n_samples=100, n_features=1, noise=20)\n", 235 | "y_pred = model.predict(X_test)\n", 236 | "print('predicted response:', y_pred, sep='\\n')" 237 | ] 238 | }, 239 | { 240 | "cell_type": "markdown", 241 | "metadata": {}, 242 | "source": [ 243 | "## Görselleştirme" 244 | ] 245 | }, 246 | { 247 | "cell_type": "code", 248 | "execution_count": 25, 249 | "metadata": {}, 250 | "outputs": [ 251 | { 252 | "data": { 253 | "text/plain": [ 254 | "" 255 | ] 256 | }, 257 | "execution_count": 25, 258 | "metadata": {}, 259 | "output_type": "execute_result" 260 | }, 261 | { 262 | "data": { 263 | "image/png": "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\n", 264 | "text/plain": [ 265 | "
" 266 | ] 267 | }, 268 | "metadata": { 269 | "needs_background": "light" 270 | }, 271 | "output_type": "display_data" 272 | } 273 | ], 274 | "source": [ 275 | "plt.scatter(X_test, y_pred)" 276 | ] 277 | }, 278 | { 279 | "cell_type": "markdown", 280 | "metadata": {}, 281 | "source": [ 282 | "## Cost Function\n", 283 | "\n", 284 | "It is a function that measures the performance of a Machine Learning model for given data. Cost Function quantifies the error between predicted values and expected values and presents it in the form of a single real number." 285 | ] 286 | }, 287 | { 288 | "cell_type": "code", 289 | "execution_count": 27, 290 | "metadata": {}, 291 | "outputs": [], 292 | "source": [ 293 | "def mse(predictions, targets):\n", 294 | " samples_num = len(predictions)\n", 295 | " accumulated_error = 0.0\n", 296 | " for prediction, target in zip(predictions, targets):\n", 297 | " accumulated_error += (prediction - target)**2\n", 298 | " \n", 299 | " mae_error = (1.0 / (2*samples_num)) * accumulated_error\n", 300 | " \n", 301 | " return mae_error" 302 | ] 303 | }, 304 | { 305 | "cell_type": "code", 306 | "execution_count": 28, 307 | "metadata": {}, 308 | "outputs": [ 309 | { 310 | "data": { 311 | "text/plain": [ 312 | "41.33773480758041" 313 | ] 314 | }, 315 | "execution_count": 28, 316 | "metadata": {}, 317 | "output_type": "execute_result" 318 | } 319 | ], 320 | "source": [ 321 | "mse(y_pred, y)" 322 | ] 323 | }, 324 | { 325 | "cell_type": "code", 326 | "execution_count": 29, 327 | "metadata": {}, 328 | "outputs": [], 329 | "source": [ 330 | "from sklearn.metrics import mean_squared_error" 331 | ] 332 | }, 333 | { 334 | "cell_type": "code", 335 | "execution_count": 31, 336 | "metadata": {}, 337 | "outputs": [ 338 | { 339 | "data": { 340 | "text/plain": [ 341 | "82.67546961516082" 342 | ] 343 | }, 344 | "execution_count": 31, 345 | "metadata": {}, 346 | "output_type": "execute_result" 347 | } 348 | ], 349 | "source": [ 350 | "mean_squared_error(y, y_pred)\n" 351 | ] 352 | }, 353 | { 354 | "cell_type": "markdown", 355 | "metadata": {}, 356 | "source": [ 357 | "## 9.3 Lojistik Regresyon\n", 358 | "\n", 359 | "Logistic regression is a fundamental classification technique. It belongs to the group of linear classifiers and is somewhat similar to polynomial and linear regression. Logistic regression is fast and relatively uncomplicated, and it’s convenient for you to interpret the results. Although it’s essentially a method for binary classification, it can also be applied to multiclass problems.\n", 360 | "\n", 361 | "You’ll need an understanding of the sigmoid function and the natural logarithm function to understand what logistic regression is and how it works.\n", 362 | "\n", 363 | "This image shows the sigmoid function (or S-shaped curve) of some variable 𝑥:\n", 364 | "\n", 365 | "![](assets/logistic-regression.jpeg)\n", 366 | "\n", 367 | "\n", 368 | "The sigmoid function has values very close to either 0 or 1 across most of its domain. This fact makes it suitable for application in classification methods." 369 | ] 370 | }, 371 | { 372 | "cell_type": "markdown", 373 | "metadata": {}, 374 | "source": [ 375 | "## Single-Variate Logistic Regression\n", 376 | "\n", 377 | "Single-variate logistic regression is the most straightforward case of logistic regression. There is only one independent variable (or feature), which is 𝐱 = 𝑥. This figure illustrates single-variate logistic regression:\n", 378 | "\n", 379 | "![](assets/logistic-regression2.jpg)\n", 380 | "\n", 381 | "Here, you have a given set of input-output (or 𝑥-𝑦) pairs, represented by green circles. These are your observations. Remember that 𝑦 can only be 0 or 1. For example, the leftmost green circle has the input 𝑥 = 0 and the actual output 𝑦 = 0. The rightmost observation has 𝑥 = 9 and 𝑦 = 1.\n", 382 | "\n", 383 | "Logistic regression finds the weights 𝑏₀ and 𝑏₁ that correspond to the maximum LLF. These weights define the logit 𝑓(𝑥) = 𝑏₀ + 𝑏₁𝑥, which is the dashed black line. They also define the predicted probability 𝑝(𝑥) = 1 / (1 + exp(−𝑓(𝑥))), shown here as the full black line. In this case, the threshold 𝑝(𝑥) = 0.5 and 𝑓(𝑥) = 0 corresponds to the value of 𝑥 slightly higher than 3. This value is the limit between the inputs with the predicted outputs of 0 and 1." 384 | ] 385 | }, 386 | { 387 | "cell_type": "markdown", 388 | "metadata": {}, 389 | "source": [ 390 | "## Python ile" 391 | ] 392 | }, 393 | { 394 | "cell_type": "code", 395 | "execution_count": 33, 396 | "metadata": {}, 397 | "outputs": [], 398 | "source": [ 399 | "import matplotlib.pyplot as plt\n", 400 | "import numpy as np\n", 401 | "from sklearn.linear_model import LogisticRegression" 402 | ] 403 | }, 404 | { 405 | "cell_type": "code", 406 | "execution_count": 35, 407 | "metadata": {}, 408 | "outputs": [], 409 | "source": [ 410 | "x = np.arange(10).reshape(-1, 1)\n", 411 | "y = np.array([0, 0, 0, 0, 1, 1, 1, 1, 1, 1])" 412 | ] 413 | }, 414 | { 415 | "cell_type": "code", 416 | "execution_count": 36, 417 | "metadata": {}, 418 | "outputs": [ 419 | { 420 | "data": { 421 | "text/plain": [ 422 | "LogisticRegression()" 423 | ] 424 | }, 425 | "execution_count": 36, 426 | "metadata": {}, 427 | "output_type": "execute_result" 428 | } 429 | ], 430 | "source": [ 431 | "model = LogisticRegression()\n", 432 | "model.fit(x, y)\n" 433 | ] 434 | }, 435 | { 436 | "cell_type": "code", 437 | "execution_count": 37, 438 | "metadata": {}, 439 | "outputs": [ 440 | { 441 | "name": "stdout", 442 | "output_type": "stream", 443 | "text": [ 444 | "Classes: [0 1]\n", 445 | "Intercept: [-4.12617727]\n", 446 | "Coef: [[1.18109091]]\n" 447 | ] 448 | } 449 | ], 450 | "source": [ 451 | "\n", 452 | "print(\"Classes: \", model.classes_)\n", 453 | "print(\"Intercept: \",model.intercept_)\n", 454 | "print(\"Coef: \",model.coef_)" 455 | ] 456 | }, 457 | { 458 | "cell_type": "code", 459 | "execution_count": 38, 460 | "metadata": {}, 461 | "outputs": [ 462 | { 463 | "name": "stdout", 464 | "output_type": "stream", 465 | "text": [ 466 | "Probability: [[0.98411203 0.01588797]\n", 467 | " [0.95003074 0.04996926]\n", 468 | " [0.85370936 0.14629064]\n", 469 | " [0.64173546 0.35826454]\n", 470 | " [0.35475873 0.64524127]\n", 471 | " [0.1443924 0.8556076 ]\n", 472 | " [0.04924876 0.95075124]\n", 473 | " [0.01565079 0.98434921]\n", 474 | " [0.00485659 0.99514341]\n", 475 | " [0.00149573 0.99850427]]\n" 476 | ] 477 | } 478 | ], 479 | "source": [ 480 | "print(\"Probability: \",model.predict_proba(x))\n" 481 | ] 482 | }, 483 | { 484 | "cell_type": "code", 485 | "execution_count": 39, 486 | "metadata": {}, 487 | "outputs": [ 488 | { 489 | "data": { 490 | "text/plain": [ 491 | "array([0, 0, 0, 0, 1, 1, 1, 1, 1, 1])" 492 | ] 493 | }, 494 | "execution_count": 39, 495 | "metadata": {}, 496 | "output_type": "execute_result" 497 | } 498 | ], 499 | "source": [ 500 | "model.predict(x)\n" 501 | ] 502 | }, 503 | { 504 | "cell_type": "code", 505 | "execution_count": 40, 506 | "metadata": {}, 507 | "outputs": [], 508 | "source": [ 509 | "from sklearn.metrics import classification_report, confusion_matrix" 510 | ] 511 | }, 512 | { 513 | "cell_type": "code", 514 | "execution_count": 41, 515 | "metadata": {}, 516 | "outputs": [ 517 | { 518 | "data": { 519 | "text/plain": [ 520 | "array([[4, 0],\n", 521 | " [0, 6]])" 522 | ] 523 | }, 524 | "execution_count": 41, 525 | "metadata": {}, 526 | "output_type": "execute_result" 527 | } 528 | ], 529 | "source": [ 530 | "confusion_matrix(y, model.predict(x))\n" 531 | ] 532 | }, 533 | { 534 | "cell_type": "code", 535 | "execution_count": 42, 536 | "metadata": {}, 537 | "outputs": [ 538 | { 539 | "data": { 540 | "text/plain": [ 541 | "" 542 | ] 543 | }, 544 | "execution_count": 42, 545 | "metadata": {}, 546 | "output_type": "execute_result" 547 | }, 548 | { 549 | "data": { 550 | "image/png": "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\n", 551 | "text/plain": [ 552 | "
" 553 | ] 554 | }, 555 | "metadata": { 556 | "needs_background": "light" 557 | }, 558 | "output_type": "display_data" 559 | } 560 | ], 561 | "source": [ 562 | "import seaborn as sns\n", 563 | "\n", 564 | "cm = confusion_matrix(y, model.predict(x))\n", 565 | "sns.heatmap(cm, annot=True)" 566 | ] 567 | } 568 | ], 569 | "metadata": { 570 | "kernelspec": { 571 | "display_name": "Python 3", 572 | "language": "python", 573 | "name": "python3" 574 | }, 575 | "language_info": { 576 | "codemirror_mode": { 577 | "name": "ipython", 578 | "version": 3 579 | }, 580 | "file_extension": ".py", 581 | "mimetype": "text/x-python", 582 | "name": "python", 583 | "nbconvert_exporter": "python", 584 | "pygments_lexer": "ipython3", 585 | "version": "3.9.1" 586 | } 587 | }, 588 | "nbformat": 4, 589 | "nbformat_minor": 4 590 | } 591 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/cobanov/python-and-ml-education/HEAD) 2 | 3 | # Python 4 | 5 | ## 1. Veri Tipleri 6 | 7 | - **1.1 Sayılar** 8 | - Matematiksel Fonksiyonar 9 | 10 | - **1.2 Değişkenler** 11 | 12 | - **1.3. Stringler** 13 | - String Birleştirme 14 | - Veri Tipi Dönüşümleri 15 | - String Biçimlendirme 16 | - String İndeksleri 17 | 18 | - **1.4 Listeler** 19 | - Listelerin Dilimlenmesi 20 | - Listelere Eleman Eklenmesi 21 | - Listelerden Eleman Çıkartılması 22 | - İnstekleri almak ve saymak 23 | - Sıralama, Tersleme ve Kopyalama 24 | 25 | - **1.5 Sözlükler** 26 | - Sözlük Anahtarları 27 | - Sözlük Metodları 28 | 29 | - **1.6 Boolean** 30 | 31 | ## 2. Koşullar 32 | 33 | - **2.1 Operatörler** 34 | 35 | - **2.2 Koşul Durumlar** 36 | 37 | 38 | ## 3. Döngüler 39 | 40 | - **3.1 For Döngüsü** 41 | - Iterable 42 | - Range 43 | - enumerate 44 | 45 | - **3.2 While Döngüsü** 46 | 47 | - **3.3 Kısa bir egseriz** 48 | 49 | 50 | ## 4. Fonksiyonlar 51 | 52 | - **4.1 Argümanlar ve Parametreler** 53 | 54 | - **4.2 return** 55 | 56 | - **4.3 Scope** 57 | 58 | 59 | # Veri Analizi 60 | 61 | ## 5. NumPy 62 | 63 | - **5.1 Numpy'ın İçeri Aktarılması** 64 | 65 | - **5.2 Arrayler** 66 | - Aralık Oluşturmak 67 | 68 | - **5.3 Matematik Operatörleri** 69 | - Çarpım 70 | - Kare Alma 71 | - Logaritma 72 | 73 | - **5.4 Trigonometri** 74 | - Sinüs 75 | - Kosinüs 76 | 77 | - **5.5 Özetler** 78 | - Toplam 79 | - Minimum 80 | - Maksimum 81 | - Kümülatif Toplam 82 | - Ortalama 83 | - Standard Sapma 84 | 85 | ## 6. Pandas 86 | 87 | - **6.1 Pandas'ın İçeri Aktarılması** 88 | 89 | - **6.2 Pandas Veri Tipleri** 90 | - Seriler 91 | - DataFrame 92 | 93 | - **6.3 Giriş Çıkış Fonksiyonları** 94 | - CSV 95 | 96 | - **6.4 Seçimler** 97 | - Getirmek 98 | - Seçmek 99 | - Düşürmek 100 | - Sıralamak 101 | 102 | - **6.5 Özelliklerin Görüntülenmesi** 103 | - Basit Özellikler 104 | - Özetler 105 | 106 | - **6.6 Kısa Egsersiz** 107 | 108 | 109 | ## 7. Matplotlib ve Seaborn 110 | 111 | - **7.1 Matplotlib ve Seaborn'un İçeri Aktarılması** 112 | 113 | - **7.2 Verinin Okunması** 114 | 115 | - **7.3 Görselleştirme Teknikleri** 116 | - Scatterplot 117 | - Lineplot 118 | - Barplot 119 | - Pie Chart 120 | 121 | 122 | # Makine Öğrenmesi 123 | 124 | - **8.1 Makine Öğrenmesi Nedir?** 125 | 126 | - **8.2 Neden Makine Öğrenmesi?** 127 | 128 | - **8.3 Makine Öğrenmesi Tipleri?** 129 | - Gözetimli 130 | - Gözetimsiz 131 | - Pekiştirmeli 132 | 133 | - **8.4 Makine Öğrenmesnini Basit Adımları** 134 | 135 | - **8.5 Makine Öğrenmesi Araçları** 136 | 137 | # 9. Makine Öğrenmesi Metodları 138 | 139 | - **9.1 Regresyon Nedir?** 140 | 141 | - **9.2 Lineer Regresyon** 142 | - Basit Lineer Regresyon 143 | - İçeri Aktarma 144 | 145 | - **9.3 Lojistik Regresyon** 146 | - asd 147 | - asd 148 | 149 | - **9.4 Karar Ağaçları** 150 | - Karar Ağaçları Nedir? 151 | - Terminoloji 152 | - Karar Ağaçlarınon Avantajları 153 | - Karar Ağaçlarınon Dezvantajları 154 | - Karar Ağaçları Egzersizi 155 | 156 | 157 | # Workshop 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | -------------------------------------------------------------------------------- /assets/karar-agaclari.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cobanov/python-and-ml-education/9738323e891fe23b1d40e213a7df0664605446fa/assets/karar-agaclari.jpg -------------------------------------------------------------------------------- /assets/linear-regression.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cobanov/python-and-ml-education/9738323e891fe23b1d40e213a7df0664605446fa/assets/linear-regression.png -------------------------------------------------------------------------------- /assets/logistic-regression.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cobanov/python-and-ml-education/9738323e891fe23b1d40e213a7df0664605446fa/assets/logistic-regression.jpeg -------------------------------------------------------------------------------- /assets/logistic-regression2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cobanov/python-and-ml-education/9738323e891fe23b1d40e213a7df0664605446fa/assets/logistic-regression2.jpg -------------------------------------------------------------------------------- /datasets/file.csv: -------------------------------------------------------------------------------- 1 | ,Country,Capital,Population 2 | 0,Belgium,Brussels,11190846 3 | 1,India,New Delhi,1303171035 4 | 2,Brazil,Brasilia,207847528 5 | -------------------------------------------------------------------------------- /datasets/iris.csv: -------------------------------------------------------------------------------- 1 | Id,SepalLengthCm,SepalWidthCm,PetalLengthCm,PetalWidthCm,Species 2 | 1,5.1,3.5,1.4,0.2,Iris-setosa 3 | 2,4.9,3.0,1.4,0.2,Iris-setosa 4 | 3,4.7,3.2,1.3,0.2,Iris-setosa 5 | 4,4.6,3.1,1.5,0.2,Iris-setosa 6 | 5,5.0,3.6,1.4,0.2,Iris-setosa 7 | 6,5.4,3.9,1.7,0.4,Iris-setosa 8 | 7,4.6,3.4,1.4,0.3,Iris-setosa 9 | 8,5.0,3.4,1.5,0.2,Iris-setosa 10 | 9,4.4,2.9,1.4,0.2,Iris-setosa 11 | 10,4.9,3.1,1.5,0.1,Iris-setosa 12 | 11,5.4,3.7,1.5,0.2,Iris-setosa 13 | 12,4.8,3.4,1.6,0.2,Iris-setosa 14 | 13,4.8,3.0,1.4,0.1,Iris-setosa 15 | 14,4.3,3.0,1.1,0.1,Iris-setosa 16 | 15,5.8,4.0,1.2,0.2,Iris-setosa 17 | 16,5.7,4.4,1.5,0.4,Iris-setosa 18 | 17,5.4,3.9,1.3,0.4,Iris-setosa 19 | 18,5.1,3.5,1.4,0.3,Iris-setosa 20 | 19,5.7,3.8,1.7,0.3,Iris-setosa 21 | 20,5.1,3.8,1.5,0.3,Iris-setosa 22 | 21,5.4,3.4,1.7,0.2,Iris-setosa 23 | 22,5.1,3.7,1.5,0.4,Iris-setosa 24 | 23,4.6,3.6,1.0,0.2,Iris-setosa 25 | 24,5.1,3.3,1.7,0.5,Iris-setosa 26 | 25,4.8,3.4,1.9,0.2,Iris-setosa 27 | 26,5.0,3.0,1.6,0.2,Iris-setosa 28 | 27,5.0,3.4,1.6,0.4,Iris-setosa 29 | 28,5.2,3.5,1.5,0.2,Iris-setosa 30 | 29,5.2,3.4,1.4,0.2,Iris-setosa 31 | 30,4.7,3.2,1.6,0.2,Iris-setosa 32 | 31,4.8,3.1,1.6,0.2,Iris-setosa 33 | 32,5.4,3.4,1.5,0.4,Iris-setosa 34 | 33,5.2,4.1,1.5,0.1,Iris-setosa 35 | 34,5.5,4.2,1.4,0.2,Iris-setosa 36 | 35,4.9,3.1,1.5,0.1,Iris-setosa 37 | 36,5.0,3.2,1.2,0.2,Iris-setosa 38 | 37,5.5,3.5,1.3,0.2,Iris-setosa 39 | 38,4.9,3.1,1.5,0.1,Iris-setosa 40 | 39,4.4,3.0,1.3,0.2,Iris-setosa 41 | 40,5.1,3.4,1.5,0.2,Iris-setosa 42 | 41,5.0,3.5,1.3,0.3,Iris-setosa 43 | 42,4.5,2.3,1.3,0.3,Iris-setosa 44 | 43,4.4,3.2,1.3,0.2,Iris-setosa 45 | 44,5.0,3.5,1.6,0.6,Iris-setosa 46 | 45,5.1,3.8,1.9,0.4,Iris-setosa 47 | 46,4.8,3.0,1.4,0.3,Iris-setosa 48 | 47,5.1,3.8,1.6,0.2,Iris-setosa 49 | 48,4.6,3.2,1.4,0.2,Iris-setosa 50 | 49,5.3,3.7,1.5,0.2,Iris-setosa 51 | 50,5.0,3.3,1.4,0.2,Iris-setosa 52 | 51,7.0,3.2,4.7,1.4,Iris-versicolor 53 | 52,6.4,3.2,4.5,1.5,Iris-versicolor 54 | 53,6.9,3.1,4.9,1.5,Iris-versicolor 55 | 54,5.5,2.3,4.0,1.3,Iris-versicolor 56 | 55,6.5,2.8,4.6,1.5,Iris-versicolor 57 | 56,5.7,2.8,4.5,1.3,Iris-versicolor 58 | 57,6.3,3.3,4.7,1.6,Iris-versicolor 59 | 58,4.9,2.4,3.3,1.0,Iris-versicolor 60 | 59,6.6,2.9,4.6,1.3,Iris-versicolor 61 | 60,5.2,2.7,3.9,1.4,Iris-versicolor 62 | 61,5.0,2.0,3.5,1.0,Iris-versicolor 63 | 62,5.9,3.0,4.2,1.5,Iris-versicolor 64 | 63,6.0,2.2,4.0,1.0,Iris-versicolor 65 | 64,6.1,2.9,4.7,1.4,Iris-versicolor 66 | 65,5.6,2.9,3.6,1.3,Iris-versicolor 67 | 66,6.7,3.1,4.4,1.4,Iris-versicolor 68 | 67,5.6,3.0,4.5,1.5,Iris-versicolor 69 | 68,5.8,2.7,4.1,1.0,Iris-versicolor 70 | 69,6.2,2.2,4.5,1.5,Iris-versicolor 71 | 70,5.6,2.5,3.9,1.1,Iris-versicolor 72 | 71,5.9,3.2,4.8,1.8,Iris-versicolor 73 | 72,6.1,2.8,4.0,1.3,Iris-versicolor 74 | 73,6.3,2.5,4.9,1.5,Iris-versicolor 75 | 74,6.1,2.8,4.7,1.2,Iris-versicolor 76 | 75,6.4,2.9,4.3,1.3,Iris-versicolor 77 | 76,6.6,3.0,4.4,1.4,Iris-versicolor 78 | 77,6.8,2.8,4.8,1.4,Iris-versicolor 79 | 78,6.7,3.0,5.0,1.7,Iris-versicolor 80 | 79,6.0,2.9,4.5,1.5,Iris-versicolor 81 | 80,5.7,2.6,3.5,1.0,Iris-versicolor 82 | 81,5.5,2.4,3.8,1.1,Iris-versicolor 83 | 82,5.5,2.4,3.7,1.0,Iris-versicolor 84 | 83,5.8,2.7,3.9,1.2,Iris-versicolor 85 | 84,6.0,2.7,5.1,1.6,Iris-versicolor 86 | 85,5.4,3.0,4.5,1.5,Iris-versicolor 87 | 86,6.0,3.4,4.5,1.6,Iris-versicolor 88 | 87,6.7,3.1,4.7,1.5,Iris-versicolor 89 | 88,6.3,2.3,4.4,1.3,Iris-versicolor 90 | 89,5.6,3.0,4.1,1.3,Iris-versicolor 91 | 90,5.5,2.5,4.0,1.3,Iris-versicolor 92 | 91,5.5,2.6,4.4,1.2,Iris-versicolor 93 | 92,6.1,3.0,4.6,1.4,Iris-versicolor 94 | 93,5.8,2.6,4.0,1.2,Iris-versicolor 95 | 94,5.0,2.3,3.3,1.0,Iris-versicolor 96 | 95,5.6,2.7,4.2,1.3,Iris-versicolor 97 | 96,5.7,3.0,4.2,1.2,Iris-versicolor 98 | 97,5.7,2.9,4.2,1.3,Iris-versicolor 99 | 98,6.2,2.9,4.3,1.3,Iris-versicolor 100 | 99,5.1,2.5,3.0,1.1,Iris-versicolor 101 | 100,5.7,2.8,4.1,1.3,Iris-versicolor 102 | 101,6.3,3.3,6.0,2.5,Iris-virginica 103 | 102,5.8,2.7,5.1,1.9,Iris-virginica 104 | 103,7.1,3.0,5.9,2.1,Iris-virginica 105 | 104,6.3,2.9,5.6,1.8,Iris-virginica 106 | 105,6.5,3.0,5.8,2.2,Iris-virginica 107 | 106,7.6,3.0,6.6,2.1,Iris-virginica 108 | 107,4.9,2.5,4.5,1.7,Iris-virginica 109 | 108,7.3,2.9,6.3,1.8,Iris-virginica 110 | 109,6.7,2.5,5.8,1.8,Iris-virginica 111 | 110,7.2,3.6,6.1,2.5,Iris-virginica 112 | 111,6.5,3.2,5.1,2.0,Iris-virginica 113 | 112,6.4,2.7,5.3,1.9,Iris-virginica 114 | 113,6.8,3.0,5.5,2.1,Iris-virginica 115 | 114,5.7,2.5,5.0,2.0,Iris-virginica 116 | 115,5.8,2.8,5.1,2.4,Iris-virginica 117 | 116,6.4,3.2,5.3,2.3,Iris-virginica 118 | 117,6.5,3.0,5.5,1.8,Iris-virginica 119 | 118,7.7,3.8,6.7,2.2,Iris-virginica 120 | 119,7.7,2.6,6.9,2.3,Iris-virginica 121 | 120,6.0,2.2,5.0,1.5,Iris-virginica 122 | 121,6.9,3.2,5.7,2.3,Iris-virginica 123 | 122,5.6,2.8,4.9,2.0,Iris-virginica 124 | 123,7.7,2.8,6.7,2.0,Iris-virginica 125 | 124,6.3,2.7,4.9,1.8,Iris-virginica 126 | 125,6.7,3.3,5.7,2.1,Iris-virginica 127 | 126,7.2,3.2,6.0,1.8,Iris-virginica 128 | 127,6.2,2.8,4.8,1.8,Iris-virginica 129 | 128,6.1,3.0,4.9,1.8,Iris-virginica 130 | 129,6.4,2.8,5.6,2.1,Iris-virginica 131 | 130,7.2,3.0,5.8,1.6,Iris-virginica 132 | 131,7.4,2.8,6.1,1.9,Iris-virginica 133 | 132,7.9,3.8,6.4,2.0,Iris-virginica 134 | 133,6.4,2.8,5.6,2.2,Iris-virginica 135 | 134,6.3,2.8,5.1,1.5,Iris-virginica 136 | 135,6.1,2.6,5.6,1.4,Iris-virginica 137 | 136,7.7,3.0,6.1,2.3,Iris-virginica 138 | 137,6.3,3.4,5.6,2.4,Iris-virginica 139 | 138,6.4,3.1,5.5,1.8,Iris-virginica 140 | 139,6.0,3.0,4.8,1.8,Iris-virginica 141 | 140,6.9,3.1,5.4,2.1,Iris-virginica 142 | 141,6.7,3.1,5.6,2.4,Iris-virginica 143 | 142,6.9,3.1,5.1,2.3,Iris-virginica 144 | 143,5.8,2.7,5.1,1.9,Iris-virginica 145 | 144,6.8,3.2,5.9,2.3,Iris-virginica 146 | 145,6.7,3.3,5.7,2.5,Iris-virginica 147 | 146,6.7,3.0,5.2,2.3,Iris-virginica 148 | 147,6.3,2.5,5.0,1.9,Iris-virginica 149 | 148,6.5,3.0,5.2,2.0,Iris-virginica 150 | 149,6.2,3.4,5.4,2.3,Iris-virginica 151 | 150,5.9,3.0,5.1,1.8,Iris-virginica 152 | -------------------------------------------------------------------------------- /datasets/myDataFrame.csv: -------------------------------------------------------------------------------- 1 | ,Country,Capital,Population 2 | 0,Belgium,Brussels,11190846 3 | 1,India,New Delhi,1303171035 4 | 2,Brazil,Brasilia,207847528 5 | -------------------------------------------------------------------------------- /final-workshop.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": null, 6 | "metadata": {}, 7 | "outputs": [], 8 | "source": [] 9 | } 10 | ], 11 | "metadata": { 12 | "kernelspec": { 13 | "display_name": "Python 3", 14 | "language": "python", 15 | "name": "python3" 16 | }, 17 | "language_info": { 18 | "codemirror_mode": { 19 | "name": "ipython", 20 | "version": 3 21 | }, 22 | "file_extension": ".py", 23 | "mimetype": "text/x-python", 24 | "name": "python", 25 | "nbconvert_exporter": "python", 26 | "pygments_lexer": "ipython3", 27 | "version": "3.9.1" 28 | } 29 | }, 30 | "nbformat": 4, 31 | "nbformat_minor": 4 32 | } 33 | -------------------------------------------------------------------------------- /makine-ogrenmesi-karar-agaclari.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Makine Öğrenmesi Metodları - Karar Ağaçları" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "## 9.4 Karar Ağaçları Nedir?\n", 15 | "\n", 16 | "Karar ağacı, denetlenen makine öğrenimi algoritmalarından biridir. Bu algoritma regresyon ve sınıflandırma problemleri için kullanılabilir - ancak çoğunlukla sınıflandırma problemleri için kullanılır. Adından da anlaşılacağı gibi, ağaç benzeri bir karar modeli kullanır.\n", 17 | "\n", 18 | "![](assets/karar-agaclari.jpg)" 19 | ] 20 | }, 21 | { 22 | "cell_type": "markdown", 23 | "metadata": {}, 24 | "source": [ 25 | "### Terminoloji\n", 26 | "** Kök Düğüm: ** Bu öznitelik, verileri iki veya daha fazla kümeye bölmek için kullanılır. Bu düğümdeki özellik özniteliği, Öznitelik Seçim Tekniklerine göre seçilir.\n", 27 | "\n", 28 | "Dal veya Alt Ağaç: Tüm karar ağacının bir parçası dal veya alt ağaç olarak adlandırılır.\n", 29 | "\n", 30 | "Bölme: Bir düğümü if-else koşullarına göre iki veya daha fazla alt düğüme bölme.\n", 31 | "\n", 32 | "Karar Düğümü: Alt düğümleri diğer alt düğümlere ayırdıktan sonra karar düğümü olarak adlandırılır.\n", 33 | "\n", 34 | "Yaprak veya Terminal Düğüm: Bu, daha fazla alt düğümlere ayrılamayacağı karar ağacının sonudur.\n", 35 | "\n", 36 | "Budama: Ağaçtan bir alt düğümün kaldırılmasına budama denir." 37 | ] 38 | }, 39 | { 40 | "cell_type": "markdown", 41 | "metadata": {}, 42 | "source": [ 43 | "### Karar Ağaçlarının Avantajları\n", 44 | "\n", 45 | "- Anlaşılması, yorumlanması, görselleştirilmesi basit.\n", 46 | "- Karar ağacı algoritması uygulaması, verileri ölçeklendirmeden de yapılabilir.\n", 47 | "- Karar ağaçları, dolaylı olarak değişken tarama veya özellik seçimi gerçekleştirir.\n", 48 | "- Parametreler arasındaki doğrusal olmayan ilişkiler, ağaç performansını etkilemez." 49 | ] 50 | }, 51 | { 52 | "cell_type": "markdown", 53 | "metadata": {}, 54 | "source": [ 55 | "### Karar Ağaçlarının Dezavantajları\n", 56 | "- Karar ağacı öğrenenler, verileri iyi genelleştirmeyen aşırı karmaşık ağaçlar oluşturabilirler. Buna aşırı uyum denir.\n", 57 | "\n", 58 | "- Karar ağaçları kararsız olabilir çünkü verilerdeki küçük değişiklikler tamamen farklı bir ağacın oluşturulmasına neden olabilir. Bu, torbalama ve güçlendirme gibi yöntemlerle azaltılması gereken varyans olarak adlandırılır.\n", 59 | "\n", 60 | "- Açgözlü algoritmalar, küresel olarak en uygun karar ağacını döndürmeyi garanti edemez. Bu, özelliklerin ve örneklerin değiştirilerek rastgele örneklendiği birden fazla ağaç eğitilerek azaltılabilir. (Rastgele Ormanlar)" 61 | ] 62 | }, 63 | { 64 | "cell_type": "markdown", 65 | "metadata": {}, 66 | "source": [ 67 | "## Code" 68 | ] 69 | }, 70 | { 71 | "cell_type": "code", 72 | "execution_count": null, 73 | "metadata": {}, 74 | "outputs": [], 75 | "source": [] 76 | } 77 | ], 78 | "metadata": { 79 | "kernelspec": { 80 | "display_name": "Python 3", 81 | "language": "python", 82 | "name": "python3" 83 | }, 84 | "language_info": { 85 | "codemirror_mode": { 86 | "name": "ipython", 87 | "version": 3 88 | }, 89 | "file_extension": ".py", 90 | "mimetype": "text/x-python", 91 | "name": "python", 92 | "nbconvert_exporter": "python", 93 | "pygments_lexer": "ipython3", 94 | "version": "3.9.1" 95 | } 96 | }, 97 | "nbformat": 4, 98 | "nbformat_minor": 4 99 | } 100 | -------------------------------------------------------------------------------- /makine-ogrenmesi-regresyon.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Makine Öğrenmesi Metodları" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "## 9.1 Regresyon Nedir?\n", 15 | "\n", 16 | "Regresyon analizi, istatistik ve makine öğrenmesindeki en önemli alanlardan biridir. Mevcut birçok regresyon yöntemi vardır. Doğrusal regresyon bunlardan biridir.\n", 17 | "\n", 18 | "Regresyon, değişkenler arasındaki ilişkileri arar. Örneğin, bir şirketin birkaç çalışanını gözlemleyebilir ve maaşlarının deneyim, eğitim düzeyi, rol, çalıştıkları şehir gibi özelliklere nasıl bağlı olduğunu anlamaya çalışabilirsiniz." 19 | ] 20 | }, 21 | { 22 | "cell_type": "markdown", 23 | "metadata": {}, 24 | "source": [ 25 | "## 9.2 Lineer Regresyon\n", 26 | "\n", 27 | "Doğrusal regresyon, muhtemelen en önemli ve yaygın olarak kullanılan regresyon tekniklerinden biridir. En basit regresyon yöntemleri arasındadır. Başlıca avantajlarından biri, sonuçları yorumlama kolaylığıdır.\n", 28 | "\n", 29 | "Bağımsız değişkenler kümesi 𝐱 = (𝑥₁,…, 𝑥ᵣ) üzerinde bazı bağımlı değişkenlerin doğrusal regresyonunu uygularken, burada 𝑟 yordayıcı sayısıdır, 𝑦 ve 𝐱 arasında doğrusal bir ilişki varsayarsınız: 𝑦 = 𝛽₀ + 𝛽₁𝑥₁ + ⋯ + 𝛽ᵣ𝑥ᵣ + 𝜀. Bu denklem, regresyon denklemidir. 𝛽₀, 𝛽₁,…, 𝛽ᵣ regresyon katsayılarıdır ve 𝜀 rastgele hatadır." 30 | ] 31 | }, 32 | { 33 | "cell_type": "markdown", 34 | "metadata": {}, 35 | "source": [ 36 | "### Basit Lineer Regresyon" 37 | ] 38 | }, 39 | { 40 | "cell_type": "markdown", 41 | "metadata": {}, 42 | "source": [ 43 | "Simple or single-variate linear regression is the simplest case of linear regression with a single independent variable, 𝐱 = 𝑥.\n", 44 | "\n", 45 | "![](assets/linear-regression.png)\n", 46 | "\n", 47 | "The estimated regression function (red line) has the equation 𝑓(𝑥) = 𝑏₀ + 𝑏₁𝑥. Your goal is to calculate the optimal values of the predicted weights 𝑏₀ and 𝑏₁ that minimize the sum of squared residuals (SSR) and determine the estimated regression function." 48 | ] 49 | }, 50 | { 51 | "cell_type": "markdown", 52 | "metadata": {}, 53 | "source": [ 54 | "## İçeri Aktarma" 55 | ] 56 | }, 57 | { 58 | "cell_type": "code", 59 | "execution_count": 14, 60 | "metadata": {}, 61 | "outputs": [], 62 | "source": [ 63 | "import numpy as np\n", 64 | "import matplotlib.pyplot as plt\n", 65 | "\n", 66 | "from sklearn.linear_model import LinearRegression" 67 | ] 68 | }, 69 | { 70 | "cell_type": "code", 71 | "execution_count": 15, 72 | "metadata": {}, 73 | "outputs": [], 74 | "source": [ 75 | "from sklearn.datasets import make_regression\n", 76 | "X, y = make_regression(n_samples=100, n_features=1, noise=5)" 77 | ] 78 | }, 79 | { 80 | "cell_type": "code", 81 | "execution_count": 16, 82 | "metadata": {}, 83 | "outputs": [ 84 | { 85 | "data": { 86 | "text/plain": [ 87 | "" 88 | ] 89 | }, 90 | "execution_count": 16, 91 | "metadata": {}, 92 | "output_type": "execute_result" 93 | }, 94 | { 95 | "data": { 96 | "image/png": "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\n", 97 | "text/plain": [ 98 | "
" 99 | ] 100 | }, 101 | "metadata": { 102 | "needs_background": "light" 103 | }, 104 | "output_type": "display_data" 105 | } 106 | ], 107 | "source": [ 108 | "plt.scatter(X, y)" 109 | ] 110 | }, 111 | { 112 | "cell_type": "markdown", 113 | "metadata": {}, 114 | "source": [ 115 | "## Model yaratma" 116 | ] 117 | }, 118 | { 119 | "cell_type": "code", 120 | "execution_count": 17, 121 | "metadata": {}, 122 | "outputs": [], 123 | "source": [ 124 | "model = LinearRegression()\n" 125 | ] 126 | }, 127 | { 128 | "cell_type": "code", 129 | "execution_count": 18, 130 | "metadata": { 131 | "scrolled": true 132 | }, 133 | "outputs": [ 134 | { 135 | "data": { 136 | "text/plain": [ 137 | "LinearRegression()" 138 | ] 139 | }, 140 | "execution_count": 18, 141 | "metadata": {}, 142 | "output_type": "execute_result" 143 | } 144 | ], 145 | "source": [ 146 | "model.fit(X, y)\n" 147 | ] 148 | }, 149 | { 150 | "cell_type": "markdown", 151 | "metadata": {}, 152 | "source": [ 153 | "##  Sopnuçları alma" 154 | ] 155 | }, 156 | { 157 | "cell_type": "code", 158 | "execution_count": 20, 159 | "metadata": {}, 160 | "outputs": [ 161 | { 162 | "name": "stdout", 163 | "output_type": "stream", 164 | "text": [ 165 | "coefficient of determination: 0.4695132985395599\n" 166 | ] 167 | } 168 | ], 169 | "source": [ 170 | "r_sq = model.score(X, y)\n", 171 | "print('coefficient of determination:', r_sq)" 172 | ] 173 | }, 174 | { 175 | "cell_type": "code", 176 | "execution_count": 21, 177 | "metadata": {}, 178 | "outputs": [ 179 | { 180 | "name": "stdout", 181 | "output_type": "stream", 182 | "text": [ 183 | "intercept: 0.036574403976687986\n", 184 | "slope: [5.44409786]\n" 185 | ] 186 | } 187 | ], 188 | "source": [ 189 | "print('intercept:', model.intercept_)\n", 190 | "print('slope:', model.coef_)" 191 | ] 192 | }, 193 | { 194 | "cell_type": "markdown", 195 | "metadata": {}, 196 | "source": [ 197 | "## Tahmin" 198 | ] 199 | }, 200 | { 201 | "cell_type": "code", 202 | "execution_count": 23, 203 | "metadata": {}, 204 | "outputs": [ 205 | { 206 | "name": "stdout", 207 | "output_type": "stream", 208 | "text": [ 209 | "predicted response:\n", 210 | "[ -6.04075636 3.53235644 10.45160252 -0.09021017 -4.24904861\n", 211 | " 6.78857147 -3.67409333 5.26812273 2.87925319 -6.73552899\n", 212 | " -4.48122206 2.85193372 -0.56173181 -5.89797846 -9.29045464\n", 213 | " -3.0680622 4.16261616 -5.49995322 4.59573234 3.19506267\n", 214 | " -2.11928911 0.15859848 -5.30751136 -9.13637482 8.62791999\n", 215 | " -4.58875224 1.3683142 1.86812321 -2.38293407 13.57973339\n", 216 | " 6.99521027 -1.24872816 2.90896307 7.31750463 1.62433157\n", 217 | " -0.42988966 -0.67337219 5.2572538 2.56706244 4.67198462\n", 218 | " 6.17828913 -5.95278203 2.00791537 -2.12308133 3.93345041\n", 219 | " -3.97607202 -0.35139679 11.92656173 -0.77571281 -0.39709873\n", 220 | " 1.98179736 -3.22589431 7.36470217 3.05655591 8.36517202\n", 221 | " 11.62565909 2.46117345 -0.86373287 -0.84367388 -2.21583219\n", 222 | " -3.75627984 -1.22634449 -7.4892331 0.89780426 0.16139435\n", 223 | " 0.37764277 -2.03373753 3.67686469 -1.23325381 2.34605179\n", 224 | " -5.45255073 6.32311378 4.98539279 -2.07433642 -4.68606266\n", 225 | " 9.94712389 -3.02175954 0.70317201 -1.07168328 1.17303701\n", 226 | " 3.25832509 0.40105279 6.63632489 1.64343542 -4.72821558\n", 227 | " 4.92251889 3.13422226 -2.12879024 -0.23110149 -8.76322977\n", 228 | " -1.45365108 -3.97907366 -5.83362248 0.16365856 -11.72481395\n", 229 | " 1.28242407 2.71667399 5.66318896 4.71893356 1.23832121]\n" 230 | ] 231 | } 232 | ], 233 | "source": [ 234 | "X_test, _ = make_regression(n_samples=100, n_features=1, noise=20)\n", 235 | "y_pred = model.predict(X_test)\n", 236 | "print('predicted response:', y_pred, sep='\\n')" 237 | ] 238 | }, 239 | { 240 | "cell_type": "markdown", 241 | "metadata": {}, 242 | "source": [ 243 | "## Görselleştirme" 244 | ] 245 | }, 246 | { 247 | "cell_type": "code", 248 | "execution_count": 25, 249 | "metadata": {}, 250 | "outputs": [ 251 | { 252 | "data": { 253 | "text/plain": [ 254 | "" 255 | ] 256 | }, 257 | "execution_count": 25, 258 | "metadata": {}, 259 | "output_type": "execute_result" 260 | }, 261 | { 262 | "data": { 263 | "image/png": "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\n", 264 | "text/plain": [ 265 | "
" 266 | ] 267 | }, 268 | "metadata": { 269 | "needs_background": "light" 270 | }, 271 | "output_type": "display_data" 272 | } 273 | ], 274 | "source": [ 275 | "plt.scatter(X_test, y_pred)" 276 | ] 277 | }, 278 | { 279 | "cell_type": "markdown", 280 | "metadata": {}, 281 | "source": [ 282 | "## Cost Function\n", 283 | "\n", 284 | "It is a function that measures the performance of a Machine Learning model for given data. Cost Function quantifies the error between predicted values and expected values and presents it in the form of a single real number." 285 | ] 286 | }, 287 | { 288 | "cell_type": "code", 289 | "execution_count": 27, 290 | "metadata": {}, 291 | "outputs": [], 292 | "source": [ 293 | "def mse(predictions, targets):\n", 294 | " samples_num = len(predictions)\n", 295 | " accumulated_error = 0.0\n", 296 | " for prediction, target in zip(predictions, targets):\n", 297 | " accumulated_error += (prediction - target)**2\n", 298 | " \n", 299 | " mae_error = (1.0 / (2*samples_num)) * accumulated_error\n", 300 | " \n", 301 | " return mae_error" 302 | ] 303 | }, 304 | { 305 | "cell_type": "code", 306 | "execution_count": 28, 307 | "metadata": {}, 308 | "outputs": [ 309 | { 310 | "data": { 311 | "text/plain": [ 312 | "41.33773480758041" 313 | ] 314 | }, 315 | "execution_count": 28, 316 | "metadata": {}, 317 | "output_type": "execute_result" 318 | } 319 | ], 320 | "source": [ 321 | "mse(y_pred, y)" 322 | ] 323 | }, 324 | { 325 | "cell_type": "code", 326 | "execution_count": 29, 327 | "metadata": {}, 328 | "outputs": [], 329 | "source": [ 330 | "from sklearn.metrics import mean_squared_error" 331 | ] 332 | }, 333 | { 334 | "cell_type": "code", 335 | "execution_count": 31, 336 | "metadata": {}, 337 | "outputs": [ 338 | { 339 | "data": { 340 | "text/plain": [ 341 | "82.67546961516082" 342 | ] 343 | }, 344 | "execution_count": 31, 345 | "metadata": {}, 346 | "output_type": "execute_result" 347 | } 348 | ], 349 | "source": [ 350 | "mean_squared_error(y, y_pred)\n" 351 | ] 352 | }, 353 | { 354 | "cell_type": "markdown", 355 | "metadata": {}, 356 | "source": [ 357 | "## 9.3 Lojistik Regresyon\n", 358 | "\n", 359 | "Logistic regression is a fundamental classification technique. It belongs to the group of linear classifiers and is somewhat similar to polynomial and linear regression. Logistic regression is fast and relatively uncomplicated, and it’s convenient for you to interpret the results. Although it’s essentially a method for binary classification, it can also be applied to multiclass problems.\n", 360 | "\n", 361 | "You’ll need an understanding of the sigmoid function and the natural logarithm function to understand what logistic regression is and how it works.\n", 362 | "\n", 363 | "This image shows the sigmoid function (or S-shaped curve) of some variable 𝑥:\n", 364 | "\n", 365 | "![](assets/logistic-regression.jpeg)\n", 366 | "\n", 367 | "\n", 368 | "The sigmoid function has values very close to either 0 or 1 across most of its domain. This fact makes it suitable for application in classification methods." 369 | ] 370 | }, 371 | { 372 | "cell_type": "markdown", 373 | "metadata": {}, 374 | "source": [ 375 | "## Single-Variate Logistic Regression\n", 376 | "\n", 377 | "Single-variate logistic regression is the most straightforward case of logistic regression. There is only one independent variable (or feature), which is 𝐱 = 𝑥. This figure illustrates single-variate logistic regression:\n", 378 | "\n", 379 | "![](assets/logistic-regression2.jpg)\n", 380 | "\n", 381 | "Here, you have a given set of input-output (or 𝑥-𝑦) pairs, represented by green circles. These are your observations. Remember that 𝑦 can only be 0 or 1. For example, the leftmost green circle has the input 𝑥 = 0 and the actual output 𝑦 = 0. The rightmost observation has 𝑥 = 9 and 𝑦 = 1.\n", 382 | "\n", 383 | "Logistic regression finds the weights 𝑏₀ and 𝑏₁ that correspond to the maximum LLF. These weights define the logit 𝑓(𝑥) = 𝑏₀ + 𝑏₁𝑥, which is the dashed black line. They also define the predicted probability 𝑝(𝑥) = 1 / (1 + exp(−𝑓(𝑥))), shown here as the full black line. In this case, the threshold 𝑝(𝑥) = 0.5 and 𝑓(𝑥) = 0 corresponds to the value of 𝑥 slightly higher than 3. This value is the limit between the inputs with the predicted outputs of 0 and 1." 384 | ] 385 | }, 386 | { 387 | "cell_type": "markdown", 388 | "metadata": {}, 389 | "source": [ 390 | "## Python ile" 391 | ] 392 | }, 393 | { 394 | "cell_type": "code", 395 | "execution_count": 33, 396 | "metadata": {}, 397 | "outputs": [], 398 | "source": [ 399 | "import matplotlib.pyplot as plt\n", 400 | "import numpy as np\n", 401 | "from sklearn.linear_model import LogisticRegression" 402 | ] 403 | }, 404 | { 405 | "cell_type": "code", 406 | "execution_count": 35, 407 | "metadata": {}, 408 | "outputs": [], 409 | "source": [ 410 | "x = np.arange(10).reshape(-1, 1)\n", 411 | "y = np.array([0, 0, 0, 0, 1, 1, 1, 1, 1, 1])" 412 | ] 413 | }, 414 | { 415 | "cell_type": "code", 416 | "execution_count": 36, 417 | "metadata": {}, 418 | "outputs": [ 419 | { 420 | "data": { 421 | "text/plain": [ 422 | "LogisticRegression()" 423 | ] 424 | }, 425 | "execution_count": 36, 426 | "metadata": {}, 427 | "output_type": "execute_result" 428 | } 429 | ], 430 | "source": [ 431 | "model = LogisticRegression()\n", 432 | "model.fit(x, y)\n" 433 | ] 434 | }, 435 | { 436 | "cell_type": "code", 437 | "execution_count": 37, 438 | "metadata": {}, 439 | "outputs": [ 440 | { 441 | "name": "stdout", 442 | "output_type": "stream", 443 | "text": [ 444 | "Classes: [0 1]\n", 445 | "Intercept: [-4.12617727]\n", 446 | "Coef: [[1.18109091]]\n" 447 | ] 448 | } 449 | ], 450 | "source": [ 451 | "\n", 452 | "print(\"Classes: \", model.classes_)\n", 453 | "print(\"Intercept: \",model.intercept_)\n", 454 | "print(\"Coef: \",model.coef_)" 455 | ] 456 | }, 457 | { 458 | "cell_type": "code", 459 | "execution_count": 38, 460 | "metadata": {}, 461 | "outputs": [ 462 | { 463 | "name": "stdout", 464 | "output_type": "stream", 465 | "text": [ 466 | "Probability: [[0.98411203 0.01588797]\n", 467 | " [0.95003074 0.04996926]\n", 468 | " [0.85370936 0.14629064]\n", 469 | " [0.64173546 0.35826454]\n", 470 | " [0.35475873 0.64524127]\n", 471 | " [0.1443924 0.8556076 ]\n", 472 | " [0.04924876 0.95075124]\n", 473 | " [0.01565079 0.98434921]\n", 474 | " [0.00485659 0.99514341]\n", 475 | " [0.00149573 0.99850427]]\n" 476 | ] 477 | } 478 | ], 479 | "source": [ 480 | "print(\"Probability: \",model.predict_proba(x))\n" 481 | ] 482 | }, 483 | { 484 | "cell_type": "code", 485 | "execution_count": 39, 486 | "metadata": {}, 487 | "outputs": [ 488 | { 489 | "data": { 490 | "text/plain": [ 491 | "array([0, 0, 0, 0, 1, 1, 1, 1, 1, 1])" 492 | ] 493 | }, 494 | "execution_count": 39, 495 | "metadata": {}, 496 | "output_type": "execute_result" 497 | } 498 | ], 499 | "source": [ 500 | "model.predict(x)\n" 501 | ] 502 | }, 503 | { 504 | "cell_type": "code", 505 | "execution_count": 40, 506 | "metadata": {}, 507 | "outputs": [], 508 | "source": [ 509 | "from sklearn.metrics import classification_report, confusion_matrix" 510 | ] 511 | }, 512 | { 513 | "cell_type": "code", 514 | "execution_count": 41, 515 | "metadata": {}, 516 | "outputs": [ 517 | { 518 | "data": { 519 | "text/plain": [ 520 | "array([[4, 0],\n", 521 | " [0, 6]])" 522 | ] 523 | }, 524 | "execution_count": 41, 525 | "metadata": {}, 526 | "output_type": "execute_result" 527 | } 528 | ], 529 | "source": [ 530 | "confusion_matrix(y, model.predict(x))\n" 531 | ] 532 | }, 533 | { 534 | "cell_type": "code", 535 | "execution_count": 42, 536 | "metadata": {}, 537 | "outputs": [ 538 | { 539 | "data": { 540 | "text/plain": [ 541 | "" 542 | ] 543 | }, 544 | "execution_count": 42, 545 | "metadata": {}, 546 | "output_type": "execute_result" 547 | }, 548 | { 549 | "data": { 550 | "image/png": "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\n", 551 | "text/plain": [ 552 | "
" 553 | ] 554 | }, 555 | "metadata": { 556 | "needs_background": "light" 557 | }, 558 | "output_type": "display_data" 559 | } 560 | ], 561 | "source": [ 562 | "import seaborn as sns\n", 563 | "\n", 564 | "cm = confusion_matrix(y, model.predict(x))\n", 565 | "sns.heatmap(cm, annot=True)" 566 | ] 567 | } 568 | ], 569 | "metadata": { 570 | "kernelspec": { 571 | "display_name": "Python 3", 572 | "language": "python", 573 | "name": "python3" 574 | }, 575 | "language_info": { 576 | "codemirror_mode": { 577 | "name": "ipython", 578 | "version": 3 579 | }, 580 | "file_extension": ".py", 581 | "mimetype": "text/x-python", 582 | "name": "python", 583 | "nbconvert_exporter": "python", 584 | "pygments_lexer": "ipython3", 585 | "version": "3.9.1" 586 | } 587 | }, 588 | "nbformat": 4, 589 | "nbformat_minor": 4 590 | } 591 | -------------------------------------------------------------------------------- /makine-ogrenmesi.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Makine Öğrenmesi" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "## 8.1 Makine Öğrenmesi Nedir?" 15 | ] 16 | }, 17 | { 18 | "cell_type": "markdown", 19 | "metadata": {}, 20 | "source": [ 21 | "Makine Öğrenimi, bilgisayarların algoritmalar oluşturabildikleri ve sonunda kendilerine sağlanan verileri analiz ederek sorunları çözme becerilerini geliştirdikleri bilgisayar bilimi alanıdır. Bu, bilgisayarların insan müdahalesi olmadan görevleri yerine getirmesini sağlayan bir Yapay Zeka alt kümesi veya bölümüdür.\n", 22 | "\n", 23 | "> Makine öğrenimi (ML), deneyim yoluyla otomatik olarak gelişen bilgisayar algoritmaları üzerine yapılan çalışmadır. Yapay zekanın bir alt kümesi olarak görülüyor. Makine öğrenimi algoritmaları, açıkça programlanmadan tahminler veya kararlar almak için \"eğitim verileri\" olarak bilinen örnek verilere dayalı bir matematiksel model oluşturur. - Wikipedia" 24 | ] 25 | }, 26 | { 27 | "cell_type": "markdown", 28 | "metadata": {}, 29 | "source": [ 30 | "## 8.2 Neden Makine Öğrenmesi?\n", 31 | "\n", 32 | "Phil Knight'ın ünlü bir sözü var - Nike'ın kurucusu\n", 33 | "\n", 34 | "> \"İnsanlara işleri nasıl yapacaklarını söylemeyin, onlara ne yapacaklarını söyleyin ve sonuçlarıyla sizi şaşırtmalarına izin verin.\"\n", 35 | "\n", 36 | "Bu alıntı, makine öğrenimini kullanmanın nedenlerini incelerken aklıma geldi.\n", 37 | "\n", 38 | "Yukarıdaki alıntıda 'insanlar'ı' bilgisayarlar 'ile değiştirirsek,\n", 39 | "\n", 40 | "> \"Bilgisayarlara işleri nasıl yapacaklarını söylemeyin, onlara ne yapacaklarını söyleyin ve sonuçlarıyla sizi şaşırtmalarına izin verin.\"\n", 41 | "\n", 42 | "Bence bu, makine öğreniminin neden yararlı ve bu kadar alakalı olduğunu hemen hemen özetliyor." 43 | ] 44 | }, 45 | { 46 | "cell_type": "markdown", 47 | "metadata": {}, 48 | "source": [ 49 | "## 8.3 Makine Öğrenmesi Tipleri\n" 50 | ] 51 | }, 52 | { 53 | "cell_type": "markdown", 54 | "metadata": {}, 55 | "source": [ 56 | "Makine Öğrenimi tamamen gelen verilere göre sonuçları tahmin etmekle ilgilidir. Makine Öğrenimi genel olarak aşağıdaki türler halinde sınıflandırılabilir:\n", 57 | "\n", 58 | "### Gözetimli (Supervised):\n", 59 | "Burada giriş veri seti bir nevi kategorize edilmiştir.\n", 60 | "\n", 61 | "- **Sınıflandırılmış (Classified)**: Sağlanan giriş verilerinde, makinenin bunları sınıflandırmalarına göre ayırmasına yardımcı olacak bir tür etiket vardır. Elma ve portakallardan oluşan böyle bir veri seti, elmaları ve portakalları segmentlere ayıracaktır.\n", 62 | " \n", 63 | "- **Regresyon (Regression):** Hisse senedi fiyatlarının belirlenmesi gibi sonuçlar elde etmek için tekrar tekrar görev yapmak\n", 64 | "\n", 65 | "\n", 66 | "### Gözetimsiz (Unsupervised):\n", 67 | "Giriş verileri herhangi bir etiketle sınıflandırılmadığında, denetimsiz algoritmalar kullanılır\n", 68 | "\n", 69 | "- **Kümeleme (Clustering):** Verileri kümeleme veya gruplama\n", 70 | "- **İlişkilendirme Kural Öğrenimi (Association Rule Learning)**\n", 71 | " \n", 72 | " \n", 73 | "### Pekiştirmeli (Reinforcement):\n", 74 | "Genellikle Beceri edinme veya gerçek zamanlı öğrenme olarak da adlandırılır. Bunda, makine en iyi sonuç olasılıklarını belirlemek için deneme yanılma kullanır. Örneğin, bir bilgisayar en yüksek puanı almayı öğrenmek için kendisine milyon kez bir oyun oynamayı öğretebilir. " 75 | ] 76 | }, 77 | { 78 | "cell_type": "markdown", 79 | "metadata": {}, 80 | "source": [ 81 | "## 8.4 Makine Öğrenmesinin Basit Adımları\n", 82 | "\n", 83 | "Genel olarak Makine Öğrenimi şu ana adımları içerir:\n", 84 | "\n", 85 | "- Bazı kaynaklardan verileri içe aktarma\n", 86 | "- Gerekirse ilgisiz verileri kaldırmak için verileri temizleme\n", 87 | "- Verilerin Eğitim Seti ve Test Setine bölünmesi.\n", 88 | "- Bir model veya bir algoritma veya bir işlev oluşturmak\n", 89 | "- Çıkışın kontrol edilmesi\n", 90 | "- Yukarıdaki adımları iyileştirin ve tekrarlayın" 91 | ] 92 | }, 93 | { 94 | "cell_type": "markdown", 95 | "metadata": {}, 96 | "source": [ 97 | "## 8.4 Makine Öğrenmesi için Python\n", 98 | "\n", 99 | "Makine Öğrenimi veya aslında yapay zeka dilden bağımsızdır. Bununla birlikte Python, geniş topluluğu ve herkesin bu alanın olanaklarını keşfetmeye başlaması için sunulan topluluk tarafından oluşturulmuş araçların bolluğu nedeniyle Makine Öğrenimi uzmanları, veri bilimcileri ve büyük şirketler tarafından kullanılan popüler dillerden biridir.\n", 100 | "\n", 101 | "**Python temelde:**\n", 102 | "\n", 103 | "- Zengin bir kütüphane ekosistemi\n", 104 | "- Düşük bir giriş engeli - Önceden programlama deneyimi olmayan biri için anlaşılması kolay\n", 105 | "- Çok esnektir\n", 106 | "- Platformdan bağımsız mı\n", 107 | "- Okuması kolay\n", 108 | "- Büyük Topluluk" 109 | ] 110 | }, 111 | { 112 | "cell_type": "markdown", 113 | "metadata": {}, 114 | "source": [ 115 | "## 8.5 Makine Öğrenmesi Araçları\n", 116 | "\n", 117 | "Makine Öğrenimi ve Veri Biliminin temellerini incelemek için keşfedeceğim araçlar şunlardır:\n", 118 | "\n", 119 | "- Jupyter Not Defterleri - Anaconda araç setinin bir parçası olarak gelir\n", 120 | "- Numpy Python ile bilimsel hesaplama için bir paket\n", 121 | "- Pandalar - Python ile veri analizi için bir kitaplık\n", 122 | "- Mathplotlib - Python ile görselleştirmeler oluşturmak için kütüphane\n", 123 | "- Scikit-learn - Python ile makine öğrenmesi modelleri kullanmak için kütüphane\n", 124 | "\n", 125 | "Birkaç başka araç da var, ancak mücadelenin son birkaç gününde çoğunlukla bunların temellerini gözden geçirirdim. Gelecekte Makine Öğrenimi hakkında daha fazlasını keşfederken Tensorflow gibi diğer araçları da keşfedeceğim." 126 | ] 127 | }, 128 | { 129 | "cell_type": "markdown", 130 | "metadata": {}, 131 | "source": [ 132 | "## 8.6 Makine Öğrenmesi Metodları" 133 | ] 134 | }, 135 | { 136 | "cell_type": "markdown", 137 | "metadata": {}, 138 | "source": [ 139 | "## Regresyon Nedir?\n", 140 | "\n", 141 | "Regresyon analizi, istatistik ve makine öğrenmesindeki en önemli alanlardan biridir. Mevcut birçok regresyon yöntemi vardır. Doğrusal regresyon bunlardan biridir.\n", 142 | "\n", 143 | "Regresyon, değişkenler arasındaki ilişkileri arar. Örneğin, bir şirketin birkaç çalışanını gözlemleyebilir ve maaşlarının deneyim, eğitim düzeyi, rol, çalıştıkları şehir gibi özelliklere nasıl bağlı olduğunu anlamaya çalışabilirsiniz." 144 | ] 145 | }, 146 | { 147 | "cell_type": "markdown", 148 | "metadata": {}, 149 | "source": [ 150 | "### Lineer Regresyon\n", 151 | "\n", 152 | "Doğrusal regresyon, muhtemelen en önemli ve yaygın olarak kullanılan regresyon tekniklerinden biridir. En basit regresyon yöntemleri arasındadır. Başlıca avantajlarından biri, sonuçları yorumlama kolaylığıdır.\n", 153 | "\n", 154 | "Bağımsız değişkenler kümesi 𝐱 = (𝑥₁,…, 𝑥ᵣ) üzerinde bazı bağımlı değişkenlerin doğrusal regresyonunu uygularken, burada 𝑟 yordayıcı sayısıdır, 𝑦 ve 𝐱 arasında doğrusal bir ilişki varsayarsınız: 𝑦 = 𝛽₀ + 𝛽₁𝑥₁ + ⋯ + 𝛽ᵣ𝑥ᵣ + 𝜀. Bu denklem, regresyon denklemidir. 𝛽₀, 𝛽₁,…, 𝛽ᵣ regresyon katsayılarıdır ve 𝜀 rastgele hatadır." 155 | ] 156 | }, 157 | { 158 | "cell_type": "markdown", 159 | "metadata": {}, 160 | "source": [ 161 | "### Basit Lineer Regresyon" 162 | ] 163 | }, 164 | { 165 | "cell_type": "markdown", 166 | "metadata": {}, 167 | "source": [ 168 | "Simple or single-variate linear regression is the simplest case of linear regression with a single independent variable, 𝐱 = 𝑥.\n", 169 | "\n", 170 | "![](assets/linear-regression.png)\n", 171 | "\n", 172 | "The estimated regression function (red line) has the equation 𝑓(𝑥) = 𝑏₀ + 𝑏₁𝑥. Your goal is to calculate the optimal values of the predicted weights 𝑏₀ and 𝑏₁ that minimize the sum of squared residuals (SSR) and determine the estimated regression function." 173 | ] 174 | }, 175 | { 176 | "cell_type": "markdown", 177 | "metadata": {}, 178 | "source": [ 179 | "## İçeri Aktarma" 180 | ] 181 | }, 182 | { 183 | "cell_type": "code", 184 | "execution_count": 14, 185 | "metadata": {}, 186 | "outputs": [], 187 | "source": [ 188 | "import numpy as np\n", 189 | "import matplotlib.pyplot as plt\n", 190 | "\n", 191 | "from sklearn.linear_model import LinearRegression" 192 | ] 193 | }, 194 | { 195 | "cell_type": "code", 196 | "execution_count": 15, 197 | "metadata": {}, 198 | "outputs": [], 199 | "source": [ 200 | "from sklearn.datasets import make_regression\n", 201 | "X, y = make_regression(n_samples=100, n_features=1, noise=5)" 202 | ] 203 | }, 204 | { 205 | "cell_type": "code", 206 | "execution_count": 16, 207 | "metadata": {}, 208 | "outputs": [ 209 | { 210 | "data": { 211 | "text/plain": [ 212 | "" 213 | ] 214 | }, 215 | "execution_count": 16, 216 | "metadata": {}, 217 | "output_type": "execute_result" 218 | }, 219 | { 220 | "data": { 221 | "image/png": "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\n", 222 | "text/plain": [ 223 | "
" 224 | ] 225 | }, 226 | "metadata": { 227 | "needs_background": "light" 228 | }, 229 | "output_type": "display_data" 230 | } 231 | ], 232 | "source": [ 233 | "plt.scatter(X, y)" 234 | ] 235 | }, 236 | { 237 | "cell_type": "markdown", 238 | "metadata": {}, 239 | "source": [ 240 | "## Model yaratma" 241 | ] 242 | }, 243 | { 244 | "cell_type": "code", 245 | "execution_count": 17, 246 | "metadata": {}, 247 | "outputs": [], 248 | "source": [ 249 | "model = LinearRegression()\n" 250 | ] 251 | }, 252 | { 253 | "cell_type": "code", 254 | "execution_count": 18, 255 | "metadata": { 256 | "scrolled": true 257 | }, 258 | "outputs": [ 259 | { 260 | "data": { 261 | "text/plain": [ 262 | "LinearRegression()" 263 | ] 264 | }, 265 | "execution_count": 18, 266 | "metadata": {}, 267 | "output_type": "execute_result" 268 | } 269 | ], 270 | "source": [ 271 | "model.fit(X, y)\n" 272 | ] 273 | }, 274 | { 275 | "cell_type": "markdown", 276 | "metadata": {}, 277 | "source": [ 278 | "##  Sopnuçları alma" 279 | ] 280 | }, 281 | { 282 | "cell_type": "code", 283 | "execution_count": 20, 284 | "metadata": {}, 285 | "outputs": [ 286 | { 287 | "name": "stdout", 288 | "output_type": "stream", 289 | "text": [ 290 | "coefficient of determination: 0.4695132985395599\n" 291 | ] 292 | } 293 | ], 294 | "source": [ 295 | "r_sq = model.score(X, y)\n", 296 | "print('coefficient of determination:', r_sq)" 297 | ] 298 | }, 299 | { 300 | "cell_type": "code", 301 | "execution_count": 21, 302 | "metadata": {}, 303 | "outputs": [ 304 | { 305 | "name": "stdout", 306 | "output_type": "stream", 307 | "text": [ 308 | "intercept: 0.036574403976687986\n", 309 | "slope: [5.44409786]\n" 310 | ] 311 | } 312 | ], 313 | "source": [ 314 | "print('intercept:', model.intercept_)\n", 315 | "print('slope:', model.coef_)" 316 | ] 317 | }, 318 | { 319 | "cell_type": "markdown", 320 | "metadata": {}, 321 | "source": [ 322 | "## Tahmin" 323 | ] 324 | }, 325 | { 326 | "cell_type": "code", 327 | "execution_count": 23, 328 | "metadata": {}, 329 | "outputs": [ 330 | { 331 | "name": "stdout", 332 | "output_type": "stream", 333 | "text": [ 334 | "predicted response:\n", 335 | "[ -6.04075636 3.53235644 10.45160252 -0.09021017 -4.24904861\n", 336 | " 6.78857147 -3.67409333 5.26812273 2.87925319 -6.73552899\n", 337 | " -4.48122206 2.85193372 -0.56173181 -5.89797846 -9.29045464\n", 338 | " -3.0680622 4.16261616 -5.49995322 4.59573234 3.19506267\n", 339 | " -2.11928911 0.15859848 -5.30751136 -9.13637482 8.62791999\n", 340 | " -4.58875224 1.3683142 1.86812321 -2.38293407 13.57973339\n", 341 | " 6.99521027 -1.24872816 2.90896307 7.31750463 1.62433157\n", 342 | " -0.42988966 -0.67337219 5.2572538 2.56706244 4.67198462\n", 343 | " 6.17828913 -5.95278203 2.00791537 -2.12308133 3.93345041\n", 344 | " -3.97607202 -0.35139679 11.92656173 -0.77571281 -0.39709873\n", 345 | " 1.98179736 -3.22589431 7.36470217 3.05655591 8.36517202\n", 346 | " 11.62565909 2.46117345 -0.86373287 -0.84367388 -2.21583219\n", 347 | " -3.75627984 -1.22634449 -7.4892331 0.89780426 0.16139435\n", 348 | " 0.37764277 -2.03373753 3.67686469 -1.23325381 2.34605179\n", 349 | " -5.45255073 6.32311378 4.98539279 -2.07433642 -4.68606266\n", 350 | " 9.94712389 -3.02175954 0.70317201 -1.07168328 1.17303701\n", 351 | " 3.25832509 0.40105279 6.63632489 1.64343542 -4.72821558\n", 352 | " 4.92251889 3.13422226 -2.12879024 -0.23110149 -8.76322977\n", 353 | " -1.45365108 -3.97907366 -5.83362248 0.16365856 -11.72481395\n", 354 | " 1.28242407 2.71667399 5.66318896 4.71893356 1.23832121]\n" 355 | ] 356 | } 357 | ], 358 | "source": [ 359 | "X_test, _ = make_regression(n_samples=100, n_features=1, noise=20)\n", 360 | "y_pred = model.predict(X_test)\n", 361 | "print('predicted response:', y_pred, sep='\\n')" 362 | ] 363 | }, 364 | { 365 | "cell_type": "markdown", 366 | "metadata": {}, 367 | "source": [ 368 | "## Görselleştirme" 369 | ] 370 | }, 371 | { 372 | "cell_type": "code", 373 | "execution_count": 25, 374 | "metadata": {}, 375 | "outputs": [ 376 | { 377 | "data": { 378 | "text/plain": [ 379 | "" 380 | ] 381 | }, 382 | "execution_count": 25, 383 | "metadata": {}, 384 | "output_type": "execute_result" 385 | }, 386 | { 387 | "data": { 388 | "image/png": "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\n", 389 | "text/plain": [ 390 | "
" 391 | ] 392 | }, 393 | "metadata": { 394 | "needs_background": "light" 395 | }, 396 | "output_type": "display_data" 397 | } 398 | ], 399 | "source": [ 400 | "plt.scatter(X_test, y_pred)" 401 | ] 402 | }, 403 | { 404 | "cell_type": "markdown", 405 | "metadata": {}, 406 | "source": [ 407 | "## Cost Function\n", 408 | "\n", 409 | "It is a function that measures the performance of a Machine Learning model for given data. Cost Function quantifies the error between predicted values and expected values and presents it in the form of a single real number." 410 | ] 411 | }, 412 | { 413 | "cell_type": "code", 414 | "execution_count": 27, 415 | "metadata": {}, 416 | "outputs": [], 417 | "source": [ 418 | "def mse(predictions, targets):\n", 419 | " samples_num = len(predictions)\n", 420 | " accumulated_error = 0.0\n", 421 | " for prediction, target in zip(predictions, targets):\n", 422 | " accumulated_error += (prediction - target)**2\n", 423 | " \n", 424 | " mae_error = (1.0 / (2*samples_num)) * accumulated_error\n", 425 | " \n", 426 | " return mae_error" 427 | ] 428 | }, 429 | { 430 | "cell_type": "code", 431 | "execution_count": 28, 432 | "metadata": {}, 433 | "outputs": [ 434 | { 435 | "data": { 436 | "text/plain": [ 437 | "41.33773480758041" 438 | ] 439 | }, 440 | "execution_count": 28, 441 | "metadata": {}, 442 | "output_type": "execute_result" 443 | } 444 | ], 445 | "source": [ 446 | "mse(y_pred, y)" 447 | ] 448 | }, 449 | { 450 | "cell_type": "code", 451 | "execution_count": 29, 452 | "metadata": {}, 453 | "outputs": [], 454 | "source": [ 455 | "from sklearn.metrics import mean_squared_error" 456 | ] 457 | }, 458 | { 459 | "cell_type": "code", 460 | "execution_count": 31, 461 | "metadata": {}, 462 | "outputs": [ 463 | { 464 | "data": { 465 | "text/plain": [ 466 | "82.67546961516082" 467 | ] 468 | }, 469 | "execution_count": 31, 470 | "metadata": {}, 471 | "output_type": "execute_result" 472 | } 473 | ], 474 | "source": [ 475 | "mean_squared_error(y, y_pred)\n" 476 | ] 477 | }, 478 | { 479 | "cell_type": "markdown", 480 | "metadata": {}, 481 | "source": [ 482 | "## Lojistik Regresyon\n", 483 | "\n", 484 | "Logistic regression is a fundamental classification technique. It belongs to the group of linear classifiers and is somewhat similar to polynomial and linear regression. Logistic regression is fast and relatively uncomplicated, and it’s convenient for you to interpret the results. Although it’s essentially a method for binary classification, it can also be applied to multiclass problems.\n", 485 | "\n", 486 | "You’ll need an understanding of the sigmoid function and the natural logarithm function to understand what logistic regression is and how it works.\n", 487 | "\n", 488 | "This image shows the sigmoid function (or S-shaped curve) of some variable 𝑥:\n", 489 | "\n", 490 | "![](assets/logistic-regression.jpeg)\n", 491 | "\n", 492 | "\n", 493 | "The sigmoid function has values very close to either 0 or 1 across most of its domain. This fact makes it suitable for application in classification methods." 494 | ] 495 | }, 496 | { 497 | "cell_type": "markdown", 498 | "metadata": {}, 499 | "source": [ 500 | "## Single-Variate Logistic Regression\n", 501 | "\n", 502 | "Single-variate logistic regression is the most straightforward case of logistic regression. There is only one independent variable (or feature), which is 𝐱 = 𝑥. This figure illustrates single-variate logistic regression:\n", 503 | "\n", 504 | "![](assets/logistic-regression2.jpg)\n", 505 | "\n", 506 | "Here, you have a given set of input-output (or 𝑥-𝑦) pairs, represented by green circles. These are your observations. Remember that 𝑦 can only be 0 or 1. For example, the leftmost green circle has the input 𝑥 = 0 and the actual output 𝑦 = 0. The rightmost observation has 𝑥 = 9 and 𝑦 = 1.\n", 507 | "\n", 508 | "Logistic regression finds the weights 𝑏₀ and 𝑏₁ that correspond to the maximum LLF. These weights define the logit 𝑓(𝑥) = 𝑏₀ + 𝑏₁𝑥, which is the dashed black line. They also define the predicted probability 𝑝(𝑥) = 1 / (1 + exp(−𝑓(𝑥))), shown here as the full black line. In this case, the threshold 𝑝(𝑥) = 0.5 and 𝑓(𝑥) = 0 corresponds to the value of 𝑥 slightly higher than 3. This value is the limit between the inputs with the predicted outputs of 0 and 1." 509 | ] 510 | }, 511 | { 512 | "cell_type": "markdown", 513 | "metadata": {}, 514 | "source": [ 515 | "## Python ile" 516 | ] 517 | }, 518 | { 519 | "cell_type": "code", 520 | "execution_count": 33, 521 | "metadata": {}, 522 | "outputs": [], 523 | "source": [ 524 | "import matplotlib.pyplot as plt\n", 525 | "import numpy as np\n", 526 | "from sklearn.linear_model import LogisticRegression" 527 | ] 528 | }, 529 | { 530 | "cell_type": "code", 531 | "execution_count": 35, 532 | "metadata": {}, 533 | "outputs": [], 534 | "source": [ 535 | "x = np.arange(10).reshape(-1, 1)\n", 536 | "y = np.array([0, 0, 0, 0, 1, 1, 1, 1, 1, 1])" 537 | ] 538 | }, 539 | { 540 | "cell_type": "code", 541 | "execution_count": 36, 542 | "metadata": {}, 543 | "outputs": [ 544 | { 545 | "data": { 546 | "text/plain": [ 547 | "LogisticRegression()" 548 | ] 549 | }, 550 | "execution_count": 36, 551 | "metadata": {}, 552 | "output_type": "execute_result" 553 | } 554 | ], 555 | "source": [ 556 | "model = LogisticRegression()\n", 557 | "model.fit(x, y)\n" 558 | ] 559 | }, 560 | { 561 | "cell_type": "code", 562 | "execution_count": 37, 563 | "metadata": {}, 564 | "outputs": [ 565 | { 566 | "name": "stdout", 567 | "output_type": "stream", 568 | "text": [ 569 | "Classes: [0 1]\n", 570 | "Intercept: [-4.12617727]\n", 571 | "Coef: [[1.18109091]]\n" 572 | ] 573 | } 574 | ], 575 | "source": [ 576 | "\n", 577 | "print(\"Classes: \", model.classes_)\n", 578 | "print(\"Intercept: \",model.intercept_)\n", 579 | "print(\"Coef: \",model.coef_)" 580 | ] 581 | }, 582 | { 583 | "cell_type": "code", 584 | "execution_count": 38, 585 | "metadata": {}, 586 | "outputs": [ 587 | { 588 | "name": "stdout", 589 | "output_type": "stream", 590 | "text": [ 591 | "Probability: [[0.98411203 0.01588797]\n", 592 | " [0.95003074 0.04996926]\n", 593 | " [0.85370936 0.14629064]\n", 594 | " [0.64173546 0.35826454]\n", 595 | " [0.35475873 0.64524127]\n", 596 | " [0.1443924 0.8556076 ]\n", 597 | " [0.04924876 0.95075124]\n", 598 | " [0.01565079 0.98434921]\n", 599 | " [0.00485659 0.99514341]\n", 600 | " [0.00149573 0.99850427]]\n" 601 | ] 602 | } 603 | ], 604 | "source": [ 605 | "print(\"Probability: \",model.predict_proba(x))\n" 606 | ] 607 | }, 608 | { 609 | "cell_type": "code", 610 | "execution_count": 39, 611 | "metadata": {}, 612 | "outputs": [ 613 | { 614 | "data": { 615 | "text/plain": [ 616 | "array([0, 0, 0, 0, 1, 1, 1, 1, 1, 1])" 617 | ] 618 | }, 619 | "execution_count": 39, 620 | "metadata": {}, 621 | "output_type": "execute_result" 622 | } 623 | ], 624 | "source": [ 625 | "model.predict(x)\n" 626 | ] 627 | }, 628 | { 629 | "cell_type": "code", 630 | "execution_count": 40, 631 | "metadata": {}, 632 | "outputs": [], 633 | "source": [ 634 | "from sklearn.metrics import classification_report, confusion_matrix" 635 | ] 636 | }, 637 | { 638 | "cell_type": "code", 639 | "execution_count": 41, 640 | "metadata": {}, 641 | "outputs": [ 642 | { 643 | "data": { 644 | "text/plain": [ 645 | "array([[4, 0],\n", 646 | " [0, 6]])" 647 | ] 648 | }, 649 | "execution_count": 41, 650 | "metadata": {}, 651 | "output_type": "execute_result" 652 | } 653 | ], 654 | "source": [ 655 | "confusion_matrix(y, model.predict(x))\n" 656 | ] 657 | }, 658 | { 659 | "cell_type": "code", 660 | "execution_count": 42, 661 | "metadata": {}, 662 | "outputs": [ 663 | { 664 | "data": { 665 | "text/plain": [ 666 | "" 667 | ] 668 | }, 669 | "execution_count": 42, 670 | "metadata": {}, 671 | "output_type": "execute_result" 672 | }, 673 | { 674 | "data": { 675 | "image/png": "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\n", 676 | "text/plain": [ 677 | "
" 678 | ] 679 | }, 680 | "metadata": { 681 | "needs_background": "light" 682 | }, 683 | "output_type": "display_data" 684 | } 685 | ], 686 | "source": [ 687 | "import seaborn as sns\n", 688 | "\n", 689 | "cm = confusion_matrix(y, model.predict(x))\n", 690 | "sns.heatmap(cm, annot=True)" 691 | ] 692 | } 693 | ], 694 | "metadata": { 695 | "kernelspec": { 696 | "display_name": "Python 3", 697 | "language": "python", 698 | "name": "python3" 699 | }, 700 | "language_info": { 701 | "codemirror_mode": { 702 | "name": "ipython", 703 | "version": 3 704 | }, 705 | "file_extension": ".py", 706 | "mimetype": "text/x-python", 707 | "name": "python", 708 | "nbconvert_exporter": "python", 709 | "pygments_lexer": "ipython3", 710 | "version": "3.9.1" 711 | } 712 | }, 713 | "nbformat": 4, 714 | "nbformat_minor": 4 715 | } 716 | -------------------------------------------------------------------------------- /python-donguler-ve-fonksiyonlar.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 3. Döngüler\n", 8 | "\n", 9 | "Döngüler, bir kod bloğunun birkaç kez çalıştırılmasına izin verir." 10 | ] 11 | }, 12 | { 13 | "cell_type": "markdown", 14 | "metadata": {}, 15 | "source": [ 16 | "## 3.1 For Döngüsü (For Loop)\n", 17 | "\n", 18 | "Python'da, temel döngü biçimi, yinelenebilir bir döngü üzerinde döngü yapabilen bir for döngüsüdür." 19 | ] 20 | }, 21 | { 22 | "cell_type": "code", 23 | "execution_count": 2, 24 | "metadata": {}, 25 | "outputs": [ 26 | { 27 | "name": "stdout", 28 | "output_type": "stream", 29 | "text": [ 30 | "P\n", 31 | "y\n", 32 | "t\n", 33 | "h\n", 34 | "o\n", 35 | "n\n" 36 | ] 37 | } 38 | ], 39 | "source": [ 40 | "for item in 'Python': # Stringler üzerinde gezilebilir\n", 41 | " print(item) # Verilen stringdeki tüm harflerin üzerin geçer" 42 | ] 43 | }, 44 | { 45 | "cell_type": "code", 46 | "execution_count": 5, 47 | "metadata": {}, 48 | "outputs": [ 49 | { 50 | "name": "stdout", 51 | "output_type": "stream", 52 | "text": [ 53 | "1\n", 54 | "2\n", 55 | "3\n", 56 | "4\n", 57 | "5\n" 58 | ] 59 | } 60 | ], 61 | "source": [ 62 | "for item in [1,2,3,4,5]: # Listeler üzerinde gezilebilir\n", 63 | " print(item) # Verilen listedeki tüm harflerin üzerin geçer" 64 | ] 65 | }, 66 | { 67 | "cell_type": "markdown", 68 | "metadata": {}, 69 | "source": [ 70 | "### Iterable" 71 | ] 72 | }, 73 | { 74 | "cell_type": "markdown", 75 | "metadata": {}, 76 | "source": [ 77 | "Yinelenebilir, yinelenebilen bir veri koleksiyonudur. Koleksiyondaki parçaların tek tek işlenebileceği anlamına geliyor. Listeler, dizeler, tuple'lar, kümeler ve sözlüklerin hepsi yinelenebilirdir. Yinelenebilir üzerinde gerçekleştirilen eylem yinelemedir ve işlenmekte olan geçerli öğeye yineleyici adı verilir." 78 | ] 79 | }, 80 | { 81 | "cell_type": "code", 82 | "execution_count": 6, 83 | "metadata": {}, 84 | "outputs": [], 85 | "source": [ 86 | "player = {\n", 87 | " 'firstname': 'Virat',\n", 88 | " 'lastname': 'Kohli',\n", 89 | " 'role': 'captain'\n", 90 | "}" 91 | ] 92 | }, 93 | { 94 | "cell_type": "code", 95 | "execution_count": 7, 96 | "metadata": {}, 97 | "outputs": [ 98 | { 99 | "name": "stdout", 100 | "output_type": "stream", 101 | "text": [ 102 | "firstname\n", 103 | "lastname\n", 104 | "role\n" 105 | ] 106 | } 107 | ], 108 | "source": [ 109 | "for item in player: # iterates over the keys of player\n", 110 | " print(item) # prints all keys" 111 | ] 112 | }, 113 | { 114 | "cell_type": "code", 115 | "execution_count": 8, 116 | "metadata": {}, 117 | "outputs": [ 118 | { 119 | "name": "stdout", 120 | "output_type": "stream", 121 | "text": [ 122 | "firstname\n", 123 | "lastname\n", 124 | "role\n" 125 | ] 126 | } 127 | ], 128 | "source": [ 129 | "for item in player.keys(): \n", 130 | " print(item) # prints all keys" 131 | ] 132 | }, 133 | { 134 | "cell_type": "code", 135 | "execution_count": 9, 136 | "metadata": {}, 137 | "outputs": [ 138 | { 139 | "name": "stdout", 140 | "output_type": "stream", 141 | "text": [ 142 | "Virat\n", 143 | "Kohli\n", 144 | "captain\n" 145 | ] 146 | } 147 | ], 148 | "source": [ 149 | "for item in player.values():\n", 150 | " print(item) # prints all values" 151 | ] 152 | }, 153 | { 154 | "cell_type": "code", 155 | "execution_count": 10, 156 | "metadata": {}, 157 | "outputs": [ 158 | { 159 | "name": "stdout", 160 | "output_type": "stream", 161 | "text": [ 162 | "('firstname', 'Virat')\n", 163 | "('lastname', 'Kohli')\n", 164 | "('role', 'captain')\n" 165 | ] 166 | } 167 | ], 168 | "source": [ 169 | "for item in player.items():\n", 170 | " print(item) # prints key and value as tuple" 171 | ] 172 | }, 173 | { 174 | "cell_type": "code", 175 | "execution_count": 11, 176 | "metadata": {}, 177 | "outputs": [ 178 | { 179 | "name": "stdout", 180 | "output_type": "stream", 181 | "text": [ 182 | "firstname Virat\n", 183 | "lastname Kohli\n", 184 | "role captain\n" 185 | ] 186 | } 187 | ], 188 | "source": [ 189 | "for key, value in player.items():\n", 190 | " print(key, value) # prints key and value using unpacking" 191 | ] 192 | }, 193 | { 194 | "cell_type": "markdown", 195 | "metadata": {}, 196 | "source": [ 197 | "### range\n", 198 | "\n", 199 | "range, Python'da bir dizi sayı oluşturmak için kullanılan yinelenebilir bir nesnedir. Genellikle döngülerde ve bir liste oluşturmak için kullanılır." 200 | ] 201 | }, 202 | { 203 | "cell_type": "code", 204 | "execution_count": 13, 205 | "metadata": { 206 | "scrolled": true 207 | }, 208 | "outputs": [ 209 | { 210 | "name": "stdout", 211 | "output_type": "stream", 212 | "text": [ 213 | "python\n", 214 | "python\n", 215 | "python\n", 216 | "python\n", 217 | "python\n", 218 | "python\n", 219 | "python\n", 220 | "python\n", 221 | "python\n", 222 | "python\n" 223 | ] 224 | } 225 | ], 226 | "source": [ 227 | "for item in range(10):\n", 228 | " print('python') # prints python 10 times" 229 | ] 230 | }, 231 | { 232 | "cell_type": "code", 233 | "execution_count": 14, 234 | "metadata": {}, 235 | "outputs": [ 236 | { 237 | "name": "stdout", 238 | "output_type": "stream", 239 | "text": [ 240 | "hello\n", 241 | "hello\n", 242 | "hello\n", 243 | "hello\n", 244 | "hello\n", 245 | "hello\n", 246 | "hello\n", 247 | "hello\n", 248 | "hello\n", 249 | "hello\n" 250 | ] 251 | } 252 | ], 253 | "source": [ 254 | "for item in range(0,10,1):\n", 255 | " print('hello') # prints hello 10 times" 256 | ] 257 | }, 258 | { 259 | "cell_type": "code", 260 | "execution_count": 15, 261 | "metadata": {}, 262 | "outputs": [ 263 | { 264 | "name": "stdout", 265 | "output_type": "stream", 266 | "text": [ 267 | "hii\n", 268 | "hii\n", 269 | "hii\n", 270 | "hii\n", 271 | "hii\n" 272 | ] 273 | } 274 | ], 275 | "source": [ 276 | "for item in range(0, 10, 2):\n", 277 | " print('hii') # prints hii 5 times " 278 | ] 279 | }, 280 | { 281 | "cell_type": "code", 282 | "execution_count": 16, 283 | "metadata": {}, 284 | "outputs": [ 285 | { 286 | "name": "stdout", 287 | "output_type": "stream", 288 | "text": [ 289 | "10\n", 290 | "9\n", 291 | "8\n", 292 | "7\n", 293 | "6\n", 294 | "5\n", 295 | "4\n", 296 | "3\n", 297 | "2\n", 298 | "1\n" 299 | ] 300 | } 301 | ], 302 | "source": [ 303 | "for item in range(10, 0, -1):\n", 304 | " print(item) # prints in reverse order" 305 | ] 306 | }, 307 | { 308 | "cell_type": "code", 309 | "execution_count": 17, 310 | "metadata": {}, 311 | "outputs": [ 312 | { 313 | "name": "stdout", 314 | "output_type": "stream", 315 | "text": [ 316 | "[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]\n" 317 | ] 318 | } 319 | ], 320 | "source": [ 321 | "print(list(range(10))) # generates a list of 10 items" 322 | ] 323 | }, 324 | { 325 | "cell_type": "markdown", 326 | "metadata": {}, 327 | "source": [ 328 | "### enumerate\n", 329 | "\n", 330 | "enumerate, döngü sırasında yineleyicinin dizinine ihtiyacımız olduğunda kullanışlıdır." 331 | ] 332 | }, 333 | { 334 | "cell_type": "code", 335 | "execution_count": 18, 336 | "metadata": { 337 | "scrolled": true 338 | }, 339 | "outputs": [ 340 | { 341 | "name": "stdout", 342 | "output_type": "stream", 343 | "text": [ 344 | "key is 0 and value is 0\n", 345 | "key is 1 and value is 1\n", 346 | "key is 2 and value is 2\n", 347 | "key is 3 and value is 3\n", 348 | "key is 4 and value is 4\n", 349 | "key is 5 and value is 5\n", 350 | "key is 6 and value is 6\n", 351 | "key is 7 and value is 7\n", 352 | "key is 8 and value is 8\n", 353 | "key is 9 and value is 9\n" 354 | ] 355 | } 356 | ], 357 | "source": [ 358 | "for key, value in enumerate(range(10)): # using unpacking techique \n", 359 | " print(f'key is {key} and value is {value}') # prints key and value at the same time" 360 | ] 361 | }, 362 | { 363 | "cell_type": "markdown", 364 | "metadata": {}, 365 | "source": [ 366 | "## 3.2 While Döngüsü (While Loop)\n", 367 | "\n", 368 | "Döngüler, belirli bir koşula bağlı olarak bir kod bloğunu birkaç kez çalıştırmanın başka bir yoludur. Yanlışlıkla sistemlerimizi çökertene kadar çalışmaya devam edecek sonsuz bir döngü oluşturmamak için while döngüleriyle uğraşırken biraz dikkatli olmalıyız!" 369 | ] 370 | }, 371 | { 372 | "cell_type": "markdown", 373 | "metadata": {}, 374 | "source": [ 375 | "```python\n", 376 | "hungry = True\n", 377 | "\n", 378 | "while(hungry): # Bu her zaman doğrudur, bu nedenle sistem çökene kadar yazdırmaya devam eder!\n", 379 | " print('Bana yiyecek bir şeyler ver!')\n", 380 | "```" 381 | ] 382 | }, 383 | { 384 | "cell_type": "markdown", 385 | "metadata": {}, 386 | "source": [ 387 | "Ancak döngüler kullanışlıdır. Yazması basit ve okuması kolaydır. Sadece döngüyü ne zaman durduracağını söylememiz gerekiyor. Döngü yürütmeyi durduran ve döngüden çıkan bir `break` deyimi kullanılarak yapılabilir. Başka bir yol da, yürütmeyi durdurmak için koşulu `False`'a çevirmektir." 388 | ] 389 | }, 390 | { 391 | "cell_type": "code", 392 | "execution_count": 19, 393 | "metadata": {}, 394 | "outputs": [ 395 | { 396 | "name": "stdout", 397 | "output_type": "stream", 398 | "text": [ 399 | "Bana yiyecek bir şeyler ver!\n" 400 | ] 401 | } 402 | ], 403 | "source": [ 404 | "hungry = True\n", 405 | "\n", 406 | "while(hungry):\n", 407 | " print('Bana yiyecek bir şeyler ver!')\n", 408 | " break # bir kere yazdır ve döngüyü durdur" 409 | ] 410 | }, 411 | { 412 | "cell_type": "code", 413 | "execution_count": 20, 414 | "metadata": { 415 | "scrolled": true 416 | }, 417 | "outputs": [ 418 | { 419 | "name": "stdout", 420 | "output_type": "stream", 421 | "text": [ 422 | "Bana yiyecek bir şeyler ver!\n", 423 | "Bana yiyecek bir şeyler ver!\n", 424 | "Bana yiyecek bir şeyler ver!\n", 425 | "Bana yiyecek bir şeyler ver!\n", 426 | "Bana yiyecek bir şeyler ver!\n", 427 | "Bana yiyecek bir şeyler ver!\n", 428 | "Bana yiyecek bir şeyler ver!\n", 429 | "Bana yiyecek bir şeyler ver!\n", 430 | "Bana yiyecek bir şeyler ver!\n", 431 | "Bana yiyecek bir şeyler ver!\n" 432 | ] 433 | } 434 | ], 435 | "source": [ 436 | "hungry = True\n", 437 | "satisfaction = 0\n", 438 | "\n", 439 | "while(satisfaction < 10):\n", 440 | " satisfaction += 1\n", 441 | " print('Bana yiyecek bir şeyler ver!') # on kere yazar" 442 | ] 443 | }, 444 | { 445 | "cell_type": "markdown", 446 | "metadata": {}, 447 | "source": [ 448 | "## 3.3 Kısa bir egsersiz\n", 449 | "\n", 450 | "Yinelenen e-postaları bir e-posta listesinde bulalım ve yazdıralım." 451 | ] 452 | }, 453 | { 454 | "cell_type": "code", 455 | "execution_count": 21, 456 | "metadata": { 457 | "scrolled": true 458 | }, 459 | "outputs": [ 460 | { 461 | "name": "stdout", 462 | "output_type": "stream", 463 | "text": [ 464 | "['roger@hey.com']\n" 465 | ] 466 | } 467 | ], 468 | "source": [ 469 | "email_list = ['roger@hey.com','michael@hey.com','roger@hey.com','prince@gmail.com']\n", 470 | "duplicate_emails = []\n", 471 | "\n", 472 | "for email in email_list:\n", 473 | " if email_list.count(email) > 1 and email not in duplicate_emails:\n", 474 | " duplicate_emails.append(email)\n", 475 | " \n", 476 | "print(duplicate_emails)" 477 | ] 478 | }, 479 | { 480 | "cell_type": "markdown", 481 | "metadata": {}, 482 | "source": [ 483 | "# 4. Fonksiyonlar\n", 484 | "\n", 485 | "Fonksiyonlar çok önemli bir kavramdır ve tüm programlama dillerinde mevcutturlar. Fonksiyonlar, bir eylemi (kod bloğu) tanımlamamıza izin verir. Şimdiye kadar, Python tarafından sağlanan print, input, len vb. Gibi bazı yerleşik işlevleri kullanıyorduk. Şimdi bir tane oluşturma zamanı." 486 | ] 487 | }, 488 | { 489 | "cell_type": "code", 490 | "execution_count": 22, 491 | "metadata": { 492 | "scrolled": true 493 | }, 494 | "outputs": [ 495 | { 496 | "name": "stdout", 497 | "output_type": "stream", 498 | "text": [ 499 | "fire 🔥 🔥 🔥\n", 500 | "fire 🔥 🔥 🔥\n" 501 | ] 502 | } 503 | ], 504 | "source": [ 505 | "def blow_fire(): # Burası fonksiyonu tanımladığımız yer\n", 506 | " print('fire 🔥 🔥 🔥')\n", 507 | "\n", 508 | "blow_fire() # Burada fonksiyonu çağırmak için çağırıyoruz\n", 509 | "blow_fire() # İstediğimiz kadar çağırabiliriz\n" 510 | ] 511 | }, 512 | { 513 | "cell_type": "markdown", 514 | "metadata": {}, 515 | "source": [ 516 | "## 4.1 Argümanlar ve Parametreler (Arguments and Parameters)\n", 517 | "\n", 518 | "Yukarıdaki işlev biraz havalıydı, ancak bazı sınırlamaları da var. Yalnızca aynı eylemi gerçekleştirebilir. Daha genişletilebilir hale getirelim ve ona bazı veriler aktararak istediği gibi eylemler gerçekleştirmesini sağlayalım" 519 | ] 520 | }, 521 | { 522 | "cell_type": "code", 523 | "execution_count": 33, 524 | "metadata": {}, 525 | "outputs": [ 526 | { 527 | "name": "stdout", 528 | "output_type": "stream", 529 | "text": [ 530 | "fire 🔥 🔥 🔥\n", 531 | "water 🌊 🌊 🌊\n" 532 | ] 533 | } 534 | ], 535 | "source": [ 536 | "def blower(name, emoji): # parameterler\n", 537 | " print(f'{name} {emoji} {emoji} {emoji}')\n", 538 | "\n", 539 | "blower('fire', '🔥') # argümanlar\n", 540 | "blower('water', '🌊')" 541 | ] 542 | }, 543 | { 544 | "cell_type": "markdown", 545 | "metadata": {}, 546 | "source": [ 547 | "## 4.2 return\n", 548 | "\n", 549 | "return, Python'da bir işlevden bir değer döndürmek için kullanılan bir anahtar sözcüktür. İşlevleri daha kullanışlı hale getirmek için, bir ifadeyi değerlendirmeye dayalı olarak bir değer döndürmesi gerekir. Herhangi bir return ifadesi belirtilmezse veya return ifadesinin ifadesi bir veri türü olarak değerlendirilmezse, işlev None döndürür. \n", 550 | "\n", 551 | "return ifadesi işlevi sonlandırır ve işlevden çıkar." 552 | ] 553 | }, 554 | { 555 | "cell_type": "code", 556 | "execution_count": 25, 557 | "metadata": {}, 558 | "outputs": [ 559 | { 560 | "name": "stdout", 561 | "output_type": "stream", 562 | "text": [ 563 | "6\n" 564 | ] 565 | } 566 | ], 567 | "source": [ 568 | "def multiplier(num1, num2):\n", 569 | " return num1 * num2\n", 570 | "\n", 571 | "result = multiplier(2,3)\n", 572 | "print(result) # 6" 573 | ] 574 | }, 575 | { 576 | "cell_type": "markdown", 577 | "metadata": {}, 578 | "source": [ 579 | "Return ifadesini kullanarak havalı bir şeyler yapma zamanı." 580 | ] 581 | }, 582 | { 583 | "cell_type": "code", 584 | "execution_count": 27, 585 | "metadata": { 586 | "scrolled": true 587 | }, 588 | "outputs": [], 589 | "source": [ 590 | "def sum(num1):\n", 591 | " def child(num2):\n", 592 | " return num1 + num2\n", 593 | " return child" 594 | ] 595 | }, 596 | { 597 | "cell_type": "code", 598 | "execution_count": 28, 599 | "metadata": {}, 600 | "outputs": [], 601 | "source": [ 602 | "add_10 = sum(10)" 603 | ] 604 | }, 605 | { 606 | "cell_type": "code", 607 | "execution_count": 29, 608 | "metadata": {}, 609 | "outputs": [ 610 | { 611 | "name": "stdout", 612 | "output_type": "stream", 613 | "text": [ 614 | "30\n", 615 | "60\n", 616 | "110\n" 617 | ] 618 | } 619 | ], 620 | "source": [ 621 | "print(add_10(20)) # 30 (Closure!!!)\n", 622 | "print(add_10(50)) # 60\n", 623 | "print(add_10(100)) # 110" 624 | ] 625 | }, 626 | { 627 | "cell_type": "markdown", 628 | "metadata": {}, 629 | "source": [ 630 | "## 4.3 Scope\n", 631 | "\n", 632 | "Basitçe anlatmak gerekirse **\"Hangi değişkenlere erişimim var?\"** Anlamına gelir. Bu, yorumlayıcının değişkenlerin kapsamını bulmak için kodu okurken sorduğu türden bir sorudur. Python'da değişkenlerin işlev kapsamı vardır, bu da bir işlev içinde tanımlanan değişkenlere işlevin dışından erişilemeyeceği anlamına gelir." 633 | ] 634 | }, 635 | { 636 | "cell_type": "code", 637 | "execution_count": 31, 638 | "metadata": { 639 | "scrolled": true 640 | }, 641 | "outputs": [], 642 | "source": [ 643 | "num = 1\n", 644 | "def confusing_function():\n", 645 | " num = 10\n", 646 | " return num" 647 | ] 648 | }, 649 | { 650 | "cell_type": "code", 651 | "execution_count": 32, 652 | "metadata": {}, 653 | "outputs": [ 654 | { 655 | "name": "stdout", 656 | "output_type": "stream", 657 | "text": [ 658 | "1\n", 659 | "10\n" 660 | ] 661 | } 662 | ], 663 | "source": [ 664 | "print(num) # 1 => Global Scope\n", 665 | "print(confusing_function()) # 10 => Local Scope" 666 | ] 667 | }, 668 | { 669 | "cell_type": "markdown", 670 | "metadata": {}, 671 | "source": [ 672 | "**Python yorumlayıcısının izlediği kapsam kuralları şunlardır:**\n", 673 | "\n", 674 | "- Yerel ile başlayın. Değişken mevcut mu? Ardından değeri alın. Değilse devam edin\n", 675 | "- Değişken, ana işlevin yerel kapsamında tanımlanmış mı? Varsa değeri getir, yoksa devam et\n", 676 | "- Değişken genel kapsamda mevcut mu? Varsa değeri getir, yoksa devam et\n", 677 | "- Değişken yerleşik bir işlev mi? Değeri getir, yoksa çıkışı" 678 | ] 679 | }, 680 | { 681 | "cell_type": "code", 682 | "execution_count": null, 683 | "metadata": {}, 684 | "outputs": [], 685 | "source": [] 686 | } 687 | ], 688 | "metadata": { 689 | "kernelspec": { 690 | "display_name": "Python 3", 691 | "language": "python", 692 | "name": "python3" 693 | }, 694 | "language_info": { 695 | "codemirror_mode": { 696 | "name": "ipython", 697 | "version": 3 698 | }, 699 | "file_extension": ".py", 700 | "mimetype": "text/x-python", 701 | "name": "python", 702 | "nbconvert_exporter": "python", 703 | "pygments_lexer": "ipython3", 704 | "version": "3.9.1" 705 | } 706 | }, 707 | "nbformat": 4, 708 | "nbformat_minor": 4 709 | } 710 | -------------------------------------------------------------------------------- /python-veri-tipleri-ve-kosullar.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# 1. Veri Tipleri" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "Basitçe **Veri Tipleri**, Python'da değerleri temsil etmenin bir yoludur. Aşağıda listenene tipler Python'da en sık kullanılan veri tipleridir.\n", 15 | "\n", 16 | "- **int (sayıları temsil eder)**\n", 17 | "- **float (ondalıklı sayıları temsil eder)**\n", 18 | "- **str (yazıları temsil eder)**\n", 19 | "- **bool (bool değerleri temsil eder)**\n", 20 | "- **list**\n", 21 | "- **dict**\n", 22 | "- tuple\n", 23 | "- set\n", 24 | "- complex (not used very often)\n", 25 | "- None (to represent an absence of value)" 26 | ] 27 | }, 28 | { 29 | "cell_type": "markdown", 30 | "metadata": {}, 31 | "source": [ 32 | "## 1.1 Sayılar (Numbers)" 33 | ] 34 | }, 35 | { 36 | "cell_type": "markdown", 37 | "metadata": {}, 38 | "source": [ 39 | "Sayısal **3** veri tipi mevcuttur:\n", 40 | "\n", 41 | "- int (tam sayıları sınırsız boyutta depolar)\n", 42 | "- float (kayan noktalı gerçek sayı değerlerini depolar)\n", 43 | "- complex (kompleks sayıları depolar)" 44 | ] 45 | }, 46 | { 47 | "cell_type": "code", 48 | "execution_count": null, 49 | "metadata": {}, 50 | "outputs": [], 51 | "source": [ 52 | "num = 100 # değişken tanımlamak\n", 53 | "print(type(num)) # \n", 54 | "\n", 55 | "num2 = 99.99\n", 56 | "print(type(num2)) # \n", 57 | "\n", 58 | "expression1 = num * 10\n", 59 | "print(type(expression1)) # \n", 60 | "\n", 61 | "expression2 = num + num2\n", 62 | "print(type(expression2)) # " 63 | ] 64 | }, 65 | { 66 | "cell_type": "markdown", 67 | "metadata": {}, 68 | "source": [ 69 | "### Matematiksel Fonksiyonlar" 70 | ] 71 | }, 72 | { 73 | "cell_type": "code", 74 | "execution_count": null, 75 | "metadata": {}, 76 | "outputs": [], 77 | "source": [ 78 | "print(round(2.1)) # 2\n", 79 | "print(round(5.9)) # 6\n", 80 | "print(abs(-34)) # 34" 81 | ] 82 | }, 83 | { 84 | "cell_type": "markdown", 85 | "metadata": {}, 86 | "source": [ 87 | "## 1.2 Değişkenler (Variables)" 88 | ] 89 | }, 90 | { 91 | "cell_type": "markdown", 92 | "metadata": {}, 93 | "source": [ 94 | "Değişkenler değerleri depolar. Aşağıdakiler, Python'da adlandırma kurallarıdır:\n", 95 | "\n", 96 | "- Değişkenler bir harfle (tercihen küçük harfle) veya alt çizgiyle başlamalı ve ardından sayılar veya alt çizgi gelmelidir\n", 97 | "- Snake case, user_name gibi birden çok kelimeyle değişken yazmanın geleneksel yoludur.\n", 98 | "- Büyük / küçük harfe duyarlıdırlar\n", 99 | "- Anahtar kelimeler, anahtar kelimelerin (Python anahtar kelimeleri) üzerine yazılmamalıdır" 100 | ] 101 | }, 102 | { 103 | "cell_type": "markdown", 104 | "metadata": {}, 105 | "source": [ 106 | "## 1.3 Stringler (Strings)" 107 | ] 108 | }, 109 | { 110 | "cell_type": "code", 111 | "execution_count": null, 112 | "metadata": {}, 113 | "outputs": [], 114 | "source": [ 115 | "name = 'Python' # tek tırnak ile tanımlamak\n", 116 | "name2 = \"Python\" # çift tırnak ile tanımlamak\n", 117 | "name3 = '''Bu oldukça uzun bir stringdir.\n", 118 | " Bu şekilde birkaç satırda yazabiliriz''' # 3 tırnak işareti ile tanımlamak\n", 119 | "\n", 120 | "print(type(name)) # \n", 121 | "print(type(name2)) # \n", 122 | "print(type(name3)) # \n" 123 | ] 124 | }, 125 | { 126 | "cell_type": "markdown", 127 | "metadata": {}, 128 | "source": [ 129 | "### String Birleştirme (String Concatenation)" 130 | ] 131 | }, 132 | { 133 | "cell_type": "code", 134 | "execution_count": null, 135 | "metadata": {}, 136 | "outputs": [], 137 | "source": [ 138 | "first_name = 'Mert'\n", 139 | "last_name = 'Cobanov'\n", 140 | "print(first_name + ' ' + last_name) # Mert Cobanov" 141 | ] 142 | }, 143 | { 144 | "cell_type": "markdown", 145 | "metadata": {}, 146 | "source": [ 147 | "### Veri Tipi Dönüşümleri (Type Conversion)" 148 | ] 149 | }, 150 | { 151 | "cell_type": "code", 152 | "execution_count": null, 153 | "metadata": {}, 154 | "outputs": [], 155 | "source": [ 156 | "user_name = 'Mert'\n", 157 | "age = 25\n", 158 | "print(user_name + age)" 159 | ] 160 | }, 161 | { 162 | "cell_type": "code", 163 | "execution_count": null, 164 | "metadata": {}, 165 | "outputs": [], 166 | "source": [ 167 | "user_name = 'Mert'\n", 168 | "age = 25\n", 169 | "print(user_name + str(age)) # Mert40\n", 170 | "print(type(str(age))) # " 171 | ] 172 | }, 173 | { 174 | "cell_type": "code", 175 | "execution_count": null, 176 | "metadata": {}, 177 | "outputs": [], 178 | "source": [ 179 | "lucky_number = 7\n", 180 | "lucky_number_stringified = str(7)\n", 181 | "lucky_number_extracted = int(lucky_number_stringified)\n", 182 | "print(lucky_number_extracted) # 7" 183 | ] 184 | }, 185 | { 186 | "cell_type": "markdown", 187 | "metadata": {}, 188 | "source": [ 189 | "### String Biçimlendirme (Formatted String)\n", 190 | "\n", 191 | "String biçimlendirme, string içeriğini dinamik olarak güncellememize izin veren bir özelliktir. Bir sunucudan alınan kullanıcı bilgilerimiz olduğunu ve buna dayalı olarak özel bir mesaj görüntülemek istediğimizi varsayalım. İlk fikir, string biçimlendirme uygulamaktır." 192 | ] 193 | }, 194 | { 195 | "cell_type": "code", 196 | "execution_count": null, 197 | "metadata": {}, 198 | "outputs": [], 199 | "source": [ 200 | "first_name = 'Mert'\n", 201 | "last_name = 'Cobanov'\n", 202 | "welcome_message = \"Hoşgeldin\" + \" \" + first_name + \" \" + last_name\n", 203 | "\n", 204 | "print(welcome_message) # Welcome Mert Cobanov" 205 | ] 206 | }, 207 | { 208 | "cell_type": "code", 209 | "execution_count": null, 210 | "metadata": {}, 211 | "outputs": [], 212 | "source": [ 213 | "first_name = 'Mert'\n", 214 | "last_name = 'Cobanov'\n", 215 | "welcome_message = f'Hoşgeldin {first_name} {last_name}'\n", 216 | "print(welcome_message) # Hoşgeldin Mert Cobanov" 217 | ] 218 | }, 219 | { 220 | "cell_type": "markdown", 221 | "metadata": {}, 222 | "source": [ 223 | "### String Indeksleri (String Indexes)\n", 224 | "\n", 225 | "Python'daki dizeler basitçe sıralı karakter koleksiyonudur. Böylece onunla birçok harika numara yapabiliriz. Bir dizenin karakterlerine erişebilir, bir alt dizeyi seçebilir, bir dizeyi tersine çevirebilir ve çok daha fazlasını yapabiliriz. Aynı zamanda sicim dilimleme olarak da adlandırılır." 226 | ] 227 | }, 228 | { 229 | "cell_type": "code", 230 | "execution_count": null, 231 | "metadata": {}, 232 | "outputs": [], 233 | "source": [ 234 | "language = 'python'\n", 235 | "first_character = language[0] # indexing starts from 0\n", 236 | "second_character = language[1]\n", 237 | "print(first_character) # p\n", 238 | "print(second_character) # y" 239 | ] 240 | }, 241 | { 242 | "cell_type": "code", 243 | "execution_count": null, 244 | "metadata": {}, 245 | "outputs": [], 246 | "source": [ 247 | "# Strings can be manipulated easily with this syntax [start:stop:step-over]\n", 248 | "\n", 249 | "range_1 = language[0:2] # here it starts from index 0 and ends at index 1\n", 250 | "range_2 = language[0::1] # starts at 0, stops at end with step over 1 \n", 251 | "range_3 = language[::2] # starts at 0, till end with step 2\n", 252 | "range_4 = language[1:] # starts at index 1 till end of string\n", 253 | "range_5 = language[-1] # selects last character\n", 254 | "range_6 = language[-2] # second last character\n", 255 | "reverse_string = language[::-1] # starts from end and reverses the string\n", 256 | "reverse_string_2 = language[::-2] # reverses string and skips 1 character\n", 257 | "\n", 258 | "print(range_1) # py\n", 259 | "print(range_2) # python\n", 260 | "print(range_3) # pto\n", 261 | "print(range_4) # ython\n", 262 | "print(range_5) # n\n", 263 | "print(range_6) # o\n", 264 | "print(reverse_string) # nohtyp\n", 265 | "print(reverse_string_2) # nhy" 266 | ] 267 | }, 268 | { 269 | "cell_type": "markdown", 270 | "metadata": {}, 271 | "source": [ 272 | "## 1.4 Listeler (Lists)\n", 273 | "\n", 274 | "Listeler önemli bir veri türüdür. Organize bir nesne koleksiyonudur. Aynı zamanda, verileri farklı amaçlar için belirli bir biçimde düzenleyen bir kap anlamına gelen bir veri yapısıdır. `[]` İle gösterilirler. Aynı veya farklı veri türlerini birlikte depolamak için kullanılabilirler." 275 | ] 276 | }, 277 | { 278 | "cell_type": "code", 279 | "execution_count": 1, 280 | "metadata": {}, 281 | "outputs": [ 282 | { 283 | "name": "stdout", 284 | "output_type": "stream", 285 | "text": [ 286 | "kalem\n" 287 | ] 288 | } 289 | ], 290 | "source": [ 291 | "favorite_languages = ['javascript', 'python', 'typescript']\n", 292 | "shopping_cart_items = ['kalem','diş fırçası', 'kolonya', 'silgi']\n", 293 | "random_things = ['futbol', 123, True, 'yazılımcı', 777]\n", 294 | "\n", 295 | "first_item = shopping_cart_items[0]\n", 296 | "print(first_item) # 'kalem'" 297 | ] 298 | }, 299 | { 300 | "cell_type": "markdown", 301 | "metadata": {}, 302 | "source": [ 303 | "### Listelerin Dilimlenmesi (List Slicing)\n", 304 | "\n", 305 | "Stringlere benzer şekilde, listeler de dilimlenebilir. Bununla birlikte, stringlerden farklı olarak listeler değiştirilebilir, bu da verilerinin değiştirilebileceği anlamına gelir." 306 | ] 307 | }, 308 | { 309 | "cell_type": "code", 310 | "execution_count": 3, 311 | "metadata": { 312 | "scrolled": true 313 | }, 314 | "outputs": [ 315 | { 316 | "name": "stdout", 317 | "output_type": "stream", 318 | "text": [ 319 | "['suarez', 'messi', 'ibrahimovic', 'zidane', 'beckham']\n" 320 | ] 321 | } 322 | ], 323 | "source": [ 324 | "soccer_stars = ['ronaldo', 'messi','ibrahimovic','zidane','beckham']\n", 325 | "soccer_stars[0] = 'suarez'\n", 326 | "print(soccer_stars) # ['suarez', 'messi','ibrahimovic','zidane','beckham']" 327 | ] 328 | }, 329 | { 330 | "cell_type": "code", 331 | "execution_count": 4, 332 | "metadata": {}, 333 | "outputs": [ 334 | { 335 | "name": "stdout", 336 | "output_type": "stream", 337 | "text": [ 338 | "['suarez', 'messi', 'ibrahimovic']\n", 339 | "['suarez', 'messi', 'ibrahimovic', 'zidane', 'beckham']\n" 340 | ] 341 | } 342 | ], 343 | "source": [ 344 | "range = soccer_stars[0:3]\n", 345 | "print(range) # ['suarez', 'messi', 'ibrahimovic']\n", 346 | "print(soccer_stars) # ['suarez', 'messi','ibrahimovic','zidane','beckham']" 347 | ] 348 | }, 349 | { 350 | "cell_type": "code", 351 | "execution_count": 5, 352 | "metadata": {}, 353 | "outputs": [ 354 | { 355 | "name": "stdout", 356 | "output_type": "stream", 357 | "text": [ 358 | "['suarez', 'messi', 'ibrahimovic', 'zidane', 'beckham']\n" 359 | ] 360 | } 361 | ], 362 | "source": [ 363 | "clone = soccer_stars[:] # listeyi kopyalar.\n", 364 | "print(clone) # ['suarez', 'messi','ibrahimovic','zidane','beckham']" 365 | ] 366 | }, 367 | { 368 | "cell_type": "code", 369 | "execution_count": 6, 370 | "metadata": {}, 371 | "outputs": [ 372 | { 373 | "name": "stdout", 374 | "output_type": "stream", 375 | "text": [ 376 | "['beckham', 'zidane', 'ibrahimovic', 'messi', 'suarez']\n" 377 | ] 378 | } 379 | ], 380 | "source": [ 381 | "reverse_order = soccer_stars[::-1] # listenin sırasını tersine çevirir\n", 382 | "print(reverse_order) # ['beckham', 'zidane', 'ibrahimovic', 'messi', 'suarez']" 383 | ] 384 | }, 385 | { 386 | "cell_type": "markdown", 387 | "metadata": {}, 388 | "source": [ 389 | "### Listelere eleman eklenmesi (append, insert, extend)" 390 | ] 391 | }, 392 | { 393 | "cell_type": "code", 394 | "execution_count": 9, 395 | "metadata": { 396 | "scrolled": true 397 | }, 398 | "outputs": [ 399 | { 400 | "name": "stdout", 401 | "output_type": "stream", 402 | "text": [ 403 | "[44, 48, 55, 89, 34, 100]\n" 404 | ] 405 | } 406 | ], 407 | "source": [ 408 | "# Append\n", 409 | "\n", 410 | "scores = [44,48,55,89,34]\n", 411 | "scores.append(100) # elemanları listenin sonuna ekler\n", 412 | "print(scores) # [44, 48, 55, 89, 34, 100]" 413 | ] 414 | }, 415 | { 416 | "cell_type": "code", 417 | "execution_count": 10, 418 | "metadata": {}, 419 | "outputs": [ 420 | { 421 | "name": "stdout", 422 | "output_type": "stream", 423 | "text": [ 424 | "[34, 44, 44, 48, 55, 89, 34, 100]\n" 425 | ] 426 | } 427 | ], 428 | "source": [ 429 | "# Insert\n", 430 | "\n", 431 | "scores.insert(0, 34) # Inserts 34 to index 0\n", 432 | "scores.insert(2, 44) # Inserts 44 to index 2\n", 433 | "print(scores) # [34, 44, 44, 48, 55, 89, 34, 100]" 434 | ] 435 | }, 436 | { 437 | "cell_type": "code", 438 | "execution_count": 13, 439 | "metadata": {}, 440 | "outputs": [ 441 | { 442 | "name": "stdout", 443 | "output_type": "stream", 444 | "text": [ 445 | "[34, 44, 44, 48, 55, 89, 34, 100, 23, 23, 23]\n" 446 | ] 447 | } 448 | ], 449 | "source": [ 450 | "# Extend\n", 451 | "\n", 452 | "scores.extend([23]) # Başka bir listeyi listenin sonuna ekler\n", 453 | "print(scores) # [34, 44, 44, 48, 55, 89, 34, 100, 23]" 454 | ] 455 | }, 456 | { 457 | "cell_type": "code", 458 | "execution_count": 14, 459 | "metadata": {}, 460 | "outputs": [ 461 | { 462 | "name": "stdout", 463 | "output_type": "stream", 464 | "text": [ 465 | "[34, 44, 44, 48, 55, 89, 34, 100, 23, 23, 23, 12, 10]\n" 466 | ] 467 | } 468 | ], 469 | "source": [ 470 | "scores.extend([12,10])\n", 471 | "print(scores) # [34, 44, 44, 48, 55, 89, 34, 100, 23, 12, 10]" 472 | ] 473 | }, 474 | { 475 | "cell_type": "markdown", 476 | "metadata": {}, 477 | "source": [ 478 | "### Listelerden eleman çıkartılması (pop, remove, clear)" 479 | ] 480 | }, 481 | { 482 | "cell_type": "code", 483 | "execution_count": 15, 484 | "metadata": {}, 485 | "outputs": [ 486 | { 487 | "name": "stdout", 488 | "output_type": "stream", 489 | "text": [ 490 | "['C', 'C#']\n" 491 | ] 492 | } 493 | ], 494 | "source": [ 495 | "# Pop\n", 496 | "\n", 497 | "languages = ['C', 'C#', 'C++']\n", 498 | "languages.pop()\n", 499 | "print(languages) # ['C', 'C#']" 500 | ] 501 | }, 502 | { 503 | "cell_type": "code", 504 | "execution_count": 16, 505 | "metadata": {}, 506 | "outputs": [ 507 | { 508 | "name": "stdout", 509 | "output_type": "stream", 510 | "text": [ 511 | "['C#']\n" 512 | ] 513 | } 514 | ], 515 | "source": [ 516 | "# Remove\n", 517 | "\n", 518 | "languages.remove('C')\n", 519 | "print(languages) # ['C#']" 520 | ] 521 | }, 522 | { 523 | "cell_type": "code", 524 | "execution_count": 17, 525 | "metadata": {}, 526 | "outputs": [ 527 | { 528 | "name": "stdout", 529 | "output_type": "stream", 530 | "text": [ 531 | "[]\n" 532 | ] 533 | } 534 | ], 535 | "source": [ 536 | "# Clear\n", 537 | "\n", 538 | "languages.clear()\n", 539 | "print(languages) # []" 540 | ] 541 | }, 542 | { 543 | "cell_type": "markdown", 544 | "metadata": {}, 545 | "source": [ 546 | "### İndeksleri almak ve sayma (index, count)" 547 | ] 548 | }, 549 | { 550 | "cell_type": "code", 551 | "execution_count": 20, 552 | "metadata": { 553 | "scrolled": true 554 | }, 555 | "outputs": [], 556 | "source": [ 557 | "alphabets = ['a', 'b', 'c']" 558 | ] 559 | }, 560 | { 561 | "cell_type": "code", 562 | "execution_count": 21, 563 | "metadata": {}, 564 | "outputs": [ 565 | { 566 | "name": "stdout", 567 | "output_type": "stream", 568 | "text": [ 569 | "0\n" 570 | ] 571 | } 572 | ], 573 | "source": [ 574 | "print(alphabets.index('a')) # 0 (Aranan değerin liste içerisindeki indeksini getirir)" 575 | ] 576 | }, 577 | { 578 | "cell_type": "code", 579 | "execution_count": 22, 580 | "metadata": {}, 581 | "outputs": [ 582 | { 583 | "name": "stdout", 584 | "output_type": "stream", 585 | "text": [ 586 | "1\n" 587 | ] 588 | } 589 | ], 590 | "source": [ 591 | "print(alphabets.count('b')) # 1 (Aranan değerin liste içerisinde kaç kez geçtiğini getirir)" 592 | ] 593 | }, 594 | { 595 | "cell_type": "markdown", 596 | "metadata": {}, 597 | "source": [ 598 | "### Sıralama, Tersleme ve Kopyalama (Sorting, reversing and copying)\n" 599 | ] 600 | }, 601 | { 602 | "cell_type": "code", 603 | "execution_count": 24, 604 | "metadata": { 605 | "scrolled": true 606 | }, 607 | "outputs": [ 608 | { 609 | "name": "stdout", 610 | "output_type": "stream", 611 | "text": [ 612 | "[1, 2, 3, 4, 5, 6]\n" 613 | ] 614 | } 615 | ], 616 | "source": [ 617 | "# Sort\n", 618 | "\n", 619 | "numbers = [1,4,6,3,2,5]\n", 620 | "numbers.sort() # Sorts the list items in place and returns nothing\n", 621 | "print(numbers) # [1, 2, 3, 4, 5, 6]" 622 | ] 623 | }, 624 | { 625 | "cell_type": "code", 626 | "execution_count": 25, 627 | "metadata": {}, 628 | "outputs": [ 629 | { 630 | "name": "stdout", 631 | "output_type": "stream", 632 | "text": [ 633 | "[1, 2, 3, 4, 5, 6]\n" 634 | ] 635 | } 636 | ], 637 | "source": [ 638 | "# Sorted\n", 639 | "# Yeni bir liste olarak alabilirsiniz\n", 640 | "\n", 641 | "sorted_numbers = sorted(numbers) # note - this is not a method\n", 642 | "print(sorted_numbers) # [1, 2, 3, 4, 5, 6]" 643 | ] 644 | }, 645 | { 646 | "cell_type": "code", 647 | "execution_count": 26, 648 | "metadata": {}, 649 | "outputs": [ 650 | { 651 | "name": "stdout", 652 | "output_type": "stream", 653 | "text": [ 654 | "[6, 5, 4, 3, 2, 1]\n" 655 | ] 656 | } 657 | ], 658 | "source": [ 659 | "# Reverse\n", 660 | "\n", 661 | "numbers.reverse() # Listeyi tersine çevirir\n", 662 | "print(numbers) # [6, 5, 4, 3, 2, 1]" 663 | ] 664 | }, 665 | { 666 | "cell_type": "code", 667 | "execution_count": 27, 668 | "metadata": {}, 669 | "outputs": [ 670 | { 671 | "name": "stdout", 672 | "output_type": "stream", 673 | "text": [ 674 | "[6, 5, 4, 3, 2, 1]\n" 675 | ] 676 | } 677 | ], 678 | "source": [ 679 | "# Copy\n", 680 | "\n", 681 | "numbers_clone = numbers.copy() # numbers[:] ile aynı şekilde kopyalar\n", 682 | "print(numbers_clone) # [6, 5, 4, 3, 2, 1]" 683 | ] 684 | }, 685 | { 686 | "cell_type": "markdown", 687 | "metadata": {}, 688 | "source": [ 689 | "## 1.5 Sözlükler (Dictionaries)" 690 | ] 691 | }, 692 | { 693 | "cell_type": "code", 694 | "execution_count": 32, 695 | "metadata": { 696 | "scrolled": true 697 | }, 698 | "outputs": [], 699 | "source": [ 700 | "user = {'name': 'Mert', 'age': 25, 'married': False}" 701 | ] 702 | }, 703 | { 704 | "cell_type": "code", 705 | "execution_count": 33, 706 | "metadata": {}, 707 | "outputs": [ 708 | { 709 | "name": "stdout", 710 | "output_type": "stream", 711 | "text": [ 712 | "Mert\n", 713 | "False\n" 714 | ] 715 | } 716 | ], 717 | "source": [ 718 | "print(user['name']) # Mert\n", 719 | "print(user['married']) # False" 720 | ] 721 | }, 722 | { 723 | "cell_type": "markdown", 724 | "metadata": {}, 725 | "source": [ 726 | "### Sözlük Anahtarları (Dictionary Keys)\n", 727 | "\n", 728 | "Bir sözlükteki anahtarların dize veri türünde olması gerektiğinden bahsetmiştim. Bu tamamen doğru değil. dikt anahtarları herhangi bir değişmez veri türünde olabilir. Ayrıca, anahtarların benzersiz olması gerekir. Bir sözlüğün birden fazla özdeş anahtarı varsa, değerler geçersiz kılınır. Bu aynı zamanda çarpışma olarak da adlandırılır." 729 | ] 730 | }, 731 | { 732 | "cell_type": "code", 733 | "execution_count": null, 734 | "metadata": {}, 735 | "outputs": [], 736 | "source": [ 737 | "abstract = {\n", 738 | " 'first': 123,\n", 739 | " True: 'hello',\n", 740 | " 777: [1,3,4,5]\n", 741 | "}" 742 | ] 743 | }, 744 | { 745 | "cell_type": "code", 746 | "execution_count": null, 747 | "metadata": {}, 748 | "outputs": [], 749 | "source": [ 750 | "print(abstract['first']) # 123\n", 751 | "print(abstract[True]) # 'hello\n", 752 | "print(abstract[777]) # [1,3,4,5]" 753 | ] 754 | }, 755 | { 756 | "cell_type": "code", 757 | "execution_count": 34, 758 | "metadata": {}, 759 | "outputs": [], 760 | "source": [ 761 | "sample = {\n", 762 | " 'username': 'Ahmet',\n", 763 | " 'username': 'Mert'\n", 764 | "}" 765 | ] 766 | }, 767 | { 768 | "cell_type": "code", 769 | "execution_count": 35, 770 | "metadata": {}, 771 | "outputs": [ 772 | { 773 | "name": "stdout", 774 | "output_type": "stream", 775 | "text": [ 776 | "Mert\n" 777 | ] 778 | } 779 | ], 780 | "source": [ 781 | "print(sample['username']) # james" 782 | ] 783 | }, 784 | { 785 | "cell_type": "markdown", 786 | "metadata": {}, 787 | "source": [ 788 | "### Sözlük Metodları (Dictionary Methods)" 789 | ] 790 | }, 791 | { 792 | "cell_type": "code", 793 | "execution_count": 36, 794 | "metadata": { 795 | "scrolled": true 796 | }, 797 | "outputs": [], 798 | "source": [ 799 | "user = {'name': 'Mert', 'age': 25, 'country': 'Turkey'}" 800 | ] 801 | }, 802 | { 803 | "cell_type": "code", 804 | "execution_count": 40, 805 | "metadata": {}, 806 | "outputs": [ 807 | { 808 | "name": "stdout", 809 | "output_type": "stream", 810 | "text": [ 811 | "True\n", 812 | "False\n", 813 | "True\n" 814 | ] 815 | } 816 | ], 817 | "source": [ 818 | "print('name' in user.keys()) # True\n", 819 | "print('gender' in user.keys()) # False\n", 820 | "\n", 821 | "print('Mert' in user.values()) # True" 822 | ] 823 | }, 824 | { 825 | "cell_type": "markdown", 826 | "metadata": {}, 827 | "source": [ 828 | "## 1.6 Boolean\n", 829 | "\n", 830 | "Booleanlar python'da bool olarak temsil edilir ve True veya False depolar." 831 | ] 832 | }, 833 | { 834 | "cell_type": "code", 835 | "execution_count": 41, 836 | "metadata": { 837 | "scrolled": true 838 | }, 839 | "outputs": [], 840 | "source": [ 841 | "iyi_mi = True\n", 842 | "kirli_mi = False" 843 | ] 844 | }, 845 | { 846 | "cell_type": "code", 847 | "execution_count": 42, 848 | "metadata": {}, 849 | "outputs": [ 850 | { 851 | "name": "stdout", 852 | "output_type": "stream", 853 | "text": [ 854 | "True\n" 855 | ] 856 | } 857 | ], 858 | "source": [ 859 | "print(10 > 9) # True " 860 | ] 861 | }, 862 | { 863 | "cell_type": "markdown", 864 | "metadata": {}, 865 | "source": [ 866 | "# 2. Koşullar" 867 | ] 868 | }, 869 | { 870 | "cell_type": "markdown", 871 | "metadata": {}, 872 | "source": [ 873 | "## 2.1 Operatörler\n", 874 | "\n", 875 | "Python'da ve dışında mantıksal operatörler çok azdır, örneğin \n", 876 | "`not, >, <, ==, >=, <=, !=`" 877 | ] 878 | }, 879 | { 880 | "cell_type": "code", 881 | "execution_count": null, 882 | "metadata": {}, 883 | "outputs": [], 884 | "source": [ 885 | "print(10 > 100) # False\n", 886 | "print(10 < 100) # True\n", 887 | "print(10 == 10) # True\n", 888 | "print(10 != 50) # True\n", 889 | "print(2 > 1 and 2 > 0) # True\n", 890 | "print(not(True)) # False\n", 891 | "print(not False) # True" 892 | ] 893 | }, 894 | { 895 | "cell_type": "markdown", 896 | "metadata": {}, 897 | "source": [ 898 | "## 2.2 Koşul Durumlar\n", 899 | "\n", 900 | "Yukarıdakiler, Python'daki if-else koşullu ifadesinin bir örneğidir. Bazı koşullara göre mantık yürütmek için kullanılır. Koşul yerine getirilmezse, else bloğundaki kod çalıştırılır. JavaScript evreninden geldiğimde, fark ettiğim fark, if-else bloklarını çevreleyen küme parantezlerinin olmaması ve koşullu ifadeden sonra a: yerine kullanılmasıdır. Koşullu bir ifadenin içindeki blok da girintilidir. Bu iki şeyi Python zihinsel modelime bağladım." 901 | ] 902 | }, 903 | { 904 | "cell_type": "code", 905 | "execution_count": null, 906 | "metadata": {}, 907 | "outputs": [], 908 | "source": [ 909 | "age = input('Yaşınızı girin: ')\n", 910 | "\n", 911 | "if (int(age) >= 18):\n", 912 | " print('Kulübe girebilirsiniz.')\n", 913 | "\n", 914 | "else:\n", 915 | " print('Özür dileriz, kulübe giremezsiniz!')" 916 | ] 917 | }, 918 | { 919 | "cell_type": "code", 920 | "execution_count": null, 921 | "metadata": {}, 922 | "outputs": [], 923 | "source": [ 924 | "exam_score = input('Sınav notunuzu girin: ')\n", 925 | "\n", 926 | "if(int(exam_score) > 90):\n", 927 | " print('Aldığınız not A+, tebrikler!')\n", 928 | "\n", 929 | "elif(int(exam_score) > 80):\n", 930 | " print('Aldığınız not A')\n", 931 | "\n", 932 | "else:\n", 933 | " print('Aldığınız not B')" 934 | ] 935 | }, 936 | { 937 | "cell_type": "code", 938 | "execution_count": null, 939 | "metadata": {}, 940 | "outputs": [], 941 | "source": [ 942 | "is_adult = True\n", 943 | "is_licensed = True\n", 944 | "\n", 945 | "if(is_adult and is_licensed):\n", 946 | " print('Araba kullanmaya izniniz var!')\n", 947 | "\n", 948 | "else:\n", 949 | " print('Araba kullanmaya izniniz yok!')" 950 | ] 951 | } 952 | ], 953 | "metadata": { 954 | "kernelspec": { 955 | "display_name": "Python 3", 956 | "language": "python", 957 | "name": "python3" 958 | }, 959 | "language_info": { 960 | "codemirror_mode": { 961 | "name": "ipython", 962 | "version": 3 963 | }, 964 | "file_extension": ".py", 965 | "mimetype": "text/x-python", 966 | "name": "python", 967 | "nbconvert_exporter": "python", 968 | "pygments_lexer": "ipython3", 969 | "version": "3.9.1" 970 | } 971 | }, 972 | "nbformat": 4, 973 | "nbformat_minor": 4 974 | } 975 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | pandas 2 | scikit-learn 3 | seaborn 4 | matplotlib 5 | numpy 6 | -------------------------------------------------------------------------------- /veri-analizi-numpy.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Veri Analizi - Part 1: Numpy" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "# 5. Numpy" 15 | ] 16 | }, 17 | { 18 | "cell_type": "markdown", 19 | "metadata": {}, 20 | "source": [ 21 | "## 5.1 Import Numpy" 22 | ] 23 | }, 24 | { 25 | "cell_type": "code", 26 | "execution_count": 1, 27 | "metadata": {}, 28 | "outputs": [], 29 | "source": [ 30 | "import numpy as np" 31 | ] 32 | }, 33 | { 34 | "cell_type": "markdown", 35 | "metadata": {}, 36 | "source": [ 37 | "## 5.2 Arrayler" 38 | ] 39 | }, 40 | { 41 | "cell_type": "code", 42 | "execution_count": 2, 43 | "metadata": {}, 44 | "outputs": [ 45 | { 46 | "data": { 47 | "text/plain": [ 48 | "array([1, 2, 3])" 49 | ] 50 | }, 51 | "execution_count": 2, 52 | "metadata": {}, 53 | "output_type": "execute_result" 54 | } 55 | ], 56 | "source": [ 57 | "a = np.array([1,2,3])\n", 58 | "a" 59 | ] 60 | }, 61 | { 62 | "cell_type": "code", 63 | "execution_count": 3, 64 | "metadata": {}, 65 | "outputs": [ 66 | { 67 | "data": { 68 | "text/plain": [ 69 | "array([[1.5, 2. , 3. ],\n", 70 | " [4. , 5. , 6. ]])" 71 | ] 72 | }, 73 | "execution_count": 3, 74 | "metadata": {}, 75 | "output_type": "execute_result" 76 | } 77 | ], 78 | "source": [ 79 | "b = np.array([(1.5,2,3), (4,5,6)], dtype = float)\n", 80 | "b" 81 | ] 82 | }, 83 | { 84 | "cell_type": "markdown", 85 | "metadata": {}, 86 | "source": [ 87 | "### Aralık Oluşturmak" 88 | ] 89 | }, 90 | { 91 | "cell_type": "code", 92 | "execution_count": 4, 93 | "metadata": {}, 94 | "outputs": [ 95 | { 96 | "data": { 97 | "text/plain": [ 98 | "array([10, 15, 20])" 99 | ] 100 | }, 101 | "execution_count": 4, 102 | "metadata": {}, 103 | "output_type": "execute_result" 104 | } 105 | ], 106 | "source": [ 107 | "d = np.arange(10, 25, 5)\n", 108 | "d" 109 | ] 110 | }, 111 | { 112 | "cell_type": "code", 113 | "execution_count": 5, 114 | "metadata": {}, 115 | "outputs": [ 116 | { 117 | "data": { 118 | "text/plain": [ 119 | "array([0. , 0.25, 0.5 , 0.75, 1. , 1.25, 1.5 , 1.75, 2. ])" 120 | ] 121 | }, 122 | "execution_count": 5, 123 | "metadata": {}, 124 | "output_type": "execute_result" 125 | } 126 | ], 127 | "source": [ 128 | "e = np.linspace(0, 2, 9)\n", 129 | "e" 130 | ] 131 | }, 132 | { 133 | "cell_type": "code", 134 | "execution_count": 6, 135 | "metadata": {}, 136 | "outputs": [ 137 | { 138 | "data": { 139 | "text/plain": [ 140 | "array([[2.10531209, 7.8939707 ],\n", 141 | " [2.34471696, 5.05345985]])" 142 | ] 143 | }, 144 | "execution_count": 6, 145 | "metadata": {}, 146 | "output_type": "execute_result" 147 | } 148 | ], 149 | "source": [ 150 | "f = np.random.random((2, 2)) * 10\n", 151 | "f" 152 | ] 153 | }, 154 | { 155 | "cell_type": "markdown", 156 | "metadata": {}, 157 | "source": [ 158 | "## 5.3 Matematik Operatörleri" 159 | ] 160 | }, 161 | { 162 | "cell_type": "code", 163 | "execution_count": 7, 164 | "metadata": {}, 165 | "outputs": [], 166 | "source": [ 167 | "a = np.array([10, 20, 30])\n", 168 | "b = np.array([1, 2, 3])" 169 | ] 170 | }, 171 | { 172 | "cell_type": "markdown", 173 | "metadata": {}, 174 | "source": [ 175 | "### Çarpım" 176 | ] 177 | }, 178 | { 179 | "cell_type": "code", 180 | "execution_count": 8, 181 | "metadata": {}, 182 | "outputs": [ 183 | { 184 | "data": { 185 | "text/plain": [ 186 | "array([10, 40, 90])" 187 | ] 188 | }, 189 | "execution_count": 8, 190 | "metadata": {}, 191 | "output_type": "execute_result" 192 | } 193 | ], 194 | "source": [ 195 | "np.multiply(a, b)" 196 | ] 197 | }, 198 | { 199 | "cell_type": "markdown", 200 | "metadata": {}, 201 | "source": [ 202 | "### Kare Alma" 203 | ] 204 | }, 205 | { 206 | "cell_type": "code", 207 | "execution_count": 9, 208 | "metadata": {}, 209 | "outputs": [ 210 | { 211 | "data": { 212 | "text/plain": [ 213 | "10.0" 214 | ] 215 | }, 216 | "execution_count": 9, 217 | "metadata": {}, 218 | "output_type": "execute_result" 219 | } 220 | ], 221 | "source": [ 222 | "np.sqrt(100)" 223 | ] 224 | }, 225 | { 226 | "cell_type": "markdown", 227 | "metadata": {}, 228 | "source": [ 229 | "### Logaritma" 230 | ] 231 | }, 232 | { 233 | "cell_type": "code", 234 | "execution_count": 10, 235 | "metadata": { 236 | "scrolled": true 237 | }, 238 | "outputs": [ 239 | { 240 | "data": { 241 | "text/plain": [ 242 | "array([2.30258509, 2.99573227, 3.40119738])" 243 | ] 244 | }, 245 | "execution_count": 10, 246 | "metadata": {}, 247 | "output_type": "execute_result" 248 | } 249 | ], 250 | "source": [ 251 | "np.log(a)" 252 | ] 253 | }, 254 | { 255 | "cell_type": "markdown", 256 | "metadata": {}, 257 | "source": [ 258 | "## 5.4 Trigonometri" 259 | ] 260 | }, 261 | { 262 | "cell_type": "code", 263 | "execution_count": 11, 264 | "metadata": {}, 265 | "outputs": [ 266 | { 267 | "data": { 268 | "text/plain": [ 269 | "array([-0.54402111, 0.91294525, -0.98803162])" 270 | ] 271 | }, 272 | "execution_count": 11, 273 | "metadata": {}, 274 | "output_type": "execute_result" 275 | } 276 | ], 277 | "source": [ 278 | "np.sin(a)" 279 | ] 280 | }, 281 | { 282 | "cell_type": "code", 283 | "execution_count": 12, 284 | "metadata": {}, 285 | "outputs": [ 286 | { 287 | "data": { 288 | "text/plain": [ 289 | "array([ 0.54030231, -0.41614684, -0.9899925 ])" 290 | ] 291 | }, 292 | "execution_count": 12, 293 | "metadata": {}, 294 | "output_type": "execute_result" 295 | } 296 | ], 297 | "source": [ 298 | "np.cos(b)" 299 | ] 300 | }, 301 | { 302 | "cell_type": "markdown", 303 | "metadata": {}, 304 | "source": [ 305 | "## 5.5 Özetler" 306 | ] 307 | }, 308 | { 309 | "cell_type": "code", 310 | "execution_count": 13, 311 | "metadata": {}, 312 | "outputs": [], 313 | "source": [ 314 | "a = np.array([10, 20, 30, 40, 50, 60])\n", 315 | "b = np.array([1, 2, 3, 4, 5, 6])" 316 | ] 317 | }, 318 | { 319 | "cell_type": "markdown", 320 | "metadata": {}, 321 | "source": [ 322 | "### Toplam" 323 | ] 324 | }, 325 | { 326 | "cell_type": "code", 327 | "execution_count": 14, 328 | "metadata": {}, 329 | "outputs": [ 330 | { 331 | "data": { 332 | "text/plain": [ 333 | "210" 334 | ] 335 | }, 336 | "execution_count": 14, 337 | "metadata": {}, 338 | "output_type": "execute_result" 339 | } 340 | ], 341 | "source": [ 342 | "a.sum() " 343 | ] 344 | }, 345 | { 346 | "cell_type": "markdown", 347 | "metadata": {}, 348 | "source": [ 349 | "### Minimum" 350 | ] 351 | }, 352 | { 353 | "cell_type": "code", 354 | "execution_count": 15, 355 | "metadata": {}, 356 | "outputs": [ 357 | { 358 | "data": { 359 | "text/plain": [ 360 | "10" 361 | ] 362 | }, 363 | "execution_count": 15, 364 | "metadata": {}, 365 | "output_type": "execute_result" 366 | } 367 | ], 368 | "source": [ 369 | "a.min()" 370 | ] 371 | }, 372 | { 373 | "cell_type": "markdown", 374 | "metadata": {}, 375 | "source": [ 376 | "### Maksimum" 377 | ] 378 | }, 379 | { 380 | "cell_type": "code", 381 | "execution_count": 16, 382 | "metadata": {}, 383 | "outputs": [ 384 | { 385 | "data": { 386 | "text/plain": [ 387 | "6" 388 | ] 389 | }, 390 | "execution_count": 16, 391 | "metadata": {}, 392 | "output_type": "execute_result" 393 | } 394 | ], 395 | "source": [ 396 | "b.max()" 397 | ] 398 | }, 399 | { 400 | "cell_type": "markdown", 401 | "metadata": {}, 402 | "source": [ 403 | "### Kümülatif Toplam" 404 | ] 405 | }, 406 | { 407 | "cell_type": "code", 408 | "execution_count": 17, 409 | "metadata": {}, 410 | "outputs": [ 411 | { 412 | "data": { 413 | "text/plain": [ 414 | "array([ 1, 3, 6, 10, 15, 21])" 415 | ] 416 | }, 417 | "execution_count": 17, 418 | "metadata": {}, 419 | "output_type": "execute_result" 420 | } 421 | ], 422 | "source": [ 423 | "b.cumsum() " 424 | ] 425 | }, 426 | { 427 | "cell_type": "markdown", 428 | "metadata": {}, 429 | "source": [ 430 | "### Ortalama" 431 | ] 432 | }, 433 | { 434 | "cell_type": "code", 435 | "execution_count": 18, 436 | "metadata": {}, 437 | "outputs": [ 438 | { 439 | "data": { 440 | "text/plain": [ 441 | "35.0" 442 | ] 443 | }, 444 | "execution_count": 18, 445 | "metadata": {}, 446 | "output_type": "execute_result" 447 | } 448 | ], 449 | "source": [ 450 | "a.mean() " 451 | ] 452 | }, 453 | { 454 | "cell_type": "markdown", 455 | "metadata": {}, 456 | "source": [ 457 | "### Standard Sapma" 458 | ] 459 | }, 460 | { 461 | "cell_type": "code", 462 | "execution_count": 19, 463 | "metadata": {}, 464 | "outputs": [ 465 | { 466 | "data": { 467 | "text/plain": [ 468 | "1.707825127659933" 469 | ] 470 | }, 471 | "execution_count": 19, 472 | "metadata": {}, 473 | "output_type": "execute_result" 474 | } 475 | ], 476 | "source": [ 477 | "np.std(b)" 478 | ] 479 | } 480 | ], 481 | "metadata": { 482 | "kernelspec": { 483 | "display_name": "Python 3", 484 | "language": "python", 485 | "name": "python3" 486 | }, 487 | "language_info": { 488 | "codemirror_mode": { 489 | "name": "ipython", 490 | "version": 3 491 | }, 492 | "file_extension": ".py", 493 | "mimetype": "text/x-python", 494 | "name": "python", 495 | "nbconvert_exporter": "python", 496 | "pygments_lexer": "ipython3", 497 | "version": "3.9.1" 498 | } 499 | }, 500 | "nbformat": 4, 501 | "nbformat_minor": 4 502 | } 503 | --------------------------------------------------------------------------------