Od zera do mistrza Big Data i uczenia maszynowego w Pythonie. Część 4

wpis w: migawka, Python | 0

Warning: file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed in /var/www/html/wp-content/plugins/nbconvert/nbconvert.php on line 87

Warning: file_get_contents(): Failed to enable crypto in /var/www/html/wp-content/plugins/nbconvert/nbconvert.php on line 87

Warning: file_get_contents(https://nbviewer.jupyter.org/url/github.com/djkormo/PythonForML/blob/master/intro/Kurs_3_typy_warunki_iteracje.ipynb): failed to open stream: operation failed in /var/www/html/wp-content/plugins/nbconvert/nbconvert.php on line 87

Warning: DOMDocument::loadHTML(): Empty string supplied as input in /var/www/html/wp-content/plugins/nbconvert/nbconvert.php on line 121

 

Po krótkim przeglądzie typów skalarnych i sekwencyjnych przyszedł czas, by pochylić się nad:

  • Instrukcjami warunkowymi
  • Pętlami
  • Wykorzystywaniem gotowych pakietów/modułów

Dobre opanowanie instrukcji warunkowych jest podstawą do budowy bardziej skomplikowanych struktur sterujących przebiegiem programu.

Należy zapamiętać jak Python traktuje  typ logiczny rzutowany na typ całkowity, gdzie 1 to prawa, a 0 to fałsz.

Jak jest wartość logiczna pustej listy, krotki lub słownika ? (sprawdź!)

Znajomość typu logicznego, operatorów logicznych i instrukcji warunkowej jest również niezbędna przy budowie funkcji i nieco później przy budowie obiektów

 

Python dostarcza jedynie dwa rodzaje pętli , for oraz while., ale moim zdaniem jest to wystarczający wybór. Możliwa jest iteracja po elementach listy, elementach słownika , elementach napisu czy zakresach. Dodatkowe sterowanie przebiegiem petli w postaci instrukcji break, continue, pass , else:

  • break – przerwij pętlę
  • continue – przerwij obecną iterację
  • pass – nie rób nic
  • else – wykonuj jeśli pętla zakończyła się inaczej niż break

Pozwala na budowę bardziej rozbudowanej logiki niż zwykła iteracja po elementach różnego typu.

 

Jedną z silnych cech Pythona jest liczba dostępnych  i darmowych pakietów, które umożliwiają nam wykorzystanie skomplikowanych algorytmów w prosty sposób.

Nie ma sensu wynajdywanie koła od nowa, ale warto poznać podstawowe funkcjonalności i sposób ich wykorzystania

Przykładowe pakiety, gdzie praktyką jest stosowanie aliasów

  •  NumPy jest podstawowym zestawem narzędzi dla języka Python umożliwiającym zaawansowane obliczenia matematyczne, w szczególności są to operacje na macierzach..
 import numpy as np
  • Pandas umożliwia nam tworzenie ramek z danymi (dataframe), które ułatwiają nam pracę przy wstępnej i nie tylko obróbce danych pochodzących z wielu źródeł. Obsłużone są m.in. pliki płaskie, arkusze Excel, a nawet strony html.
import pandas as pd
  • Matplotlib pomaga przy tworzeniu wizualizacji, dostępnych jest wiele typów wykresów.
  
import matplotlib.pyplot as plt
  • Folium wzbogaci naszą wizualizacją o interaktywne mapy
    
import folium 
  • scilearn-kit jest zbiorem wielu algorytmów stosowanych w uczeniu  maszynowym i w praktyce zawiera wszystko co jest potrzebne do budowę modeli i ich trening.
    
from sklearn import datasets
  • Seaborn, który umożliwia bezpośrednie wykorzystanie ramek z danymi i pozwala na wygenerowanie wykresów bardziej zaawansowanych niż matplotlib.
import seaborn as sns 
  • TensorFlow to bogata biblioteka firmy Google, które umożliwia m.in zastosowanie algorytmów uczenia głębokiego (deep learning). Wspiera karty graficzne.
import tensorflow as tf 

Często na początku wielu programów w Pythonie, które dotykają uczenia maszynowego, mamy  taki zapis

import numpy as np
import pandas as pd
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn as sns

Kod notatnika Jupiter umieszczony na Githubie

Podglad:

https://nbviewer.jupyter.org/github/djkormo/PythonForML/blob/master/intro/Kurs_3_typy_warunki_iteracje.ipynb

Uruchomienie:

https://mybinder.org/v2/gh/djkormo/PythonForML/master?filepath=intro/Kurs_3_typy_warunki_iteracje.ipynb

Po uruchomieniu kontenera należy wyczyścić informacje wyjściowe za pomocą menu Kernel -> Restart & Clear Output.

Reenredowane wtyczką WP:

 

Poprzednia część

Następna część

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.