Dariusz Brzeziński Instytut Informatyki, Politechnika Poznańska

Podobne dokumenty
Wprowadzenie do Python

Podstawy analizy danych numerycznych w języku Python

Python : podstawy nauki o danych / Alberto Boschetti, Luca Massaron. Gliwice, cop Spis treści

Odczytywanie i zapisywanie obrazów rastrowych do plików, operacje punktowe na tablicach obrazów

Technologie informacyjne: Excel i Python

Metody eksploracji danych Laboratorium 1. Weka + Python + regresja

Technologie informacyjne: Arkusz kalkulacyjny

Język R : kompletny zestaw narzędzi dla analityków danych / Hadley Wickham, Garrett Grolemund. Gliwice, cop Spis treści

Przetwarzanie i analiza danych w języku Python / Marek Gągolewski, Maciej Bartoszuk, Anna Cena. Warszawa, Spis treści

Wykresy i interfejsy użytkownika

Instalacja Pakietu R

BIBLIOTEKA NUMPY, CZĘŚĆ 1

Wprowadzenie do Pakietu R dla kierunku Zootechnika. Dr Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu

2017/2018 WGGiOS AGH. LibreOffice Base

Programowanie w języku Python. Grażyna Koba

Statystyka I z R. Bartosz Maćkiewicz. 2 października 2017

R dla każdego : zaawansowane analizy i grafika statystyczna / Jared P. Lander. Warszawa, Spis treści

Podstawy MATLABA, cd.

W następnych slajdach jest to graficznie przedstawione jak to zrobić

NARZĘDZIA WIZUALIZACJI

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Wymagania edukacyjne na poszczególne oceny z informatyki w gimnazjum klasa III Rok szkolny 2015/16

QUERY język zapytań do tworzenia raportów w AS/400

Modelowanie rynków finansowych z wykorzystaniem pakietu R

Instalacja Wirtualnego Serwera Egzaminacyjnego

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII

Wymagania edukacyjne z informatyki w klasie VIII

Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki. Podstawy Informatyki i algorytmizacji

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Dodawanie i modyfikacja atrybutów zbioru

Generated by Foxit PDF Creator Foxit Software For evaluation only. System Szablonów

INFORMATYKA KLASA VII Wymagania na poszczególne oceny

Jerzy Nawrocki, Wprowadzenie do informatyki

Java jako język programowania

NARZĘDZIA WIZUALIZACJI

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Edytor materiału nauczania

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

kodowanienaekranie.pl

Administracja i programowanie pod Microsoft SQL Server 2000

Program współpracuje z : Windows XP, Powerdraft 2004, v8, XM, Microstation 2004, v8, XM.

NARZĘDZIA WIZUALIZACJI

Projektowanie rozwiązań Big Data z wykorzystaniem Apache Hadoop & Family

Przedrostkowa i przyrostkowa inkrementacja i dekrementacja

Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python

Podstawy technologii WWW

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

mfaktura Instrukcja instalacji programu Ogólne informacje o programie biuro@matsol.pl

Temat 1. Więcej o opracowywaniu tekstu

Tworzenie pliku źródłowego w aplikacji POLTAX2B.

Instalowanie VHOPE i plików biblioteki VHOPE

Kurs rozszerzony języka Python

Menu Plik w Edytorze symboli i Edytorze widoku aparatów

Podstawy Pythona. Krzysztof Gdawiec. Instytut Informatyki Uniwersytet Śląski

Instrukcja wczytywania i przekazywania sprawozdań resortowych w Centralnej Aplikacji Statystycznej (CAS) przez użytkowników podobszaru PS

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Microsoft SharePoint 2016 : krok po kroku / Olga Londer, Penelope Coventry. Warszawa, Spis treści

Programowanie w C++ Wykład 1. Katarzyna Grzelak. 25 luty K.Grzelak (Wykład 1) Programowanie w C++ 1 / 38

- język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji

Tytuł: PRZETWARZANIE DANYCH W SAS Autor: Wioletta Grzenda, Aneta Ptak-Chmielewska, Karol Przanowski, Urszula Zwierz. Wstęp

Komunikacja Człowiek-Komputer

Python jest interpreterem poleceń. Mamy dwie możliwości wydawania owych poleceń:

Symulacja obliczeń kwantowych

Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PRZEKROJOWY.

KLASA 7 szk.podst. Stopień dostateczny Uczeń: wymienia cztery dziedziny,

Płace VULCAN. 2. W polu nad drzewem danych ustaw rok, za który chcesz utworzyć deklaracje.

INFORMATYKA W SELEKCJI

Sage Symfonia Sage Symfonia Start Wystawianie nieobsługiwanych w programach e-deklaracji i załączników do e-deklaracji

MAMP: Można to pobrać i zainstalować z XAMPP: Można go pobrać i zainstalować z

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW

plansoft.org Zmiany w Plansoft.org Błyskawiczny eksport danych PLANOWANIE ZAJĘĆ, REZERWOWANIE SAL I ZASOBÓW

a) Tworzymy podcast w programie Audacity

Wydajne programowanie w R : praktyczny przewodnik po lepszym programowaniu / Colin Gillespie, Robin Lovelace. Warszawa, Spis treści.

Jak wygenerować, sprawdzić i wysłać JPK?

BIBLIOTEKA NUMPY, CZĘŚĆ 2

Pakiety Matematyczne - R Zestaw 2.

Programowanie obiektowe

Podręcznik administratora Systemu SWD ST Instrukcja instalacji systemu

ODCZYT PRZEZ ZŁĄCZE OBD

Wymagania edukacyjne na ocenę z informatyki klasa 3

Matlab Składnia + podstawy programowania

Python: JPEG. Zadanie. 1. Wczytanie obrazka

Aplikacja do podpisu cyfrowego npodpis

Instrukcja wczytywania i przekazywania zbiorów centralnych w Centralnej Aplikacji Statystycznej (CAS) przez użytkowników podobszaru PS

Zaawansowany kurs języka Python

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

biegle i poprawnie posługuje się terminologią informatyczną,

Krótka instrukcja opracowania danych w programie SciDAVis v. 1-D013-win

Sage Symfonia ERP Wystawianie nieobsługiwanych w programach e-deklaracji i załączników do e-deklaracji

Test z przedmiotu zajęcia komputerowe

Systemy GIS Tworzenie zapytań w bazach danych

3.1. Na dobry początek

Programowanie wizualne

Ankieta Microsoft Online - proste narzędzie dostępne bezpłatnie online przez przeglądarkę

Przewodnik po pakiecie R / Przemysław Biecek. Wyd. 4 rozsz. Wrocław, Spis treści

Transkrypt:

Dariusz Brzeziński Instytut Informatyki, Politechnika Poznańska

Wstęp Biblioteki Pandas Scikit-learn Plotnine Jupyter Zadanie Eksploracja danych w Pythonie 2

Popularny język programowania Prosta składnia Bogactwo gotowych bibliotek do analizy danych: Numpy, Scipy, Pandas Scikit-learn, PySpark, NLTK Matplotlib, seaborn, plotnine, altair Szybszy niż R* Nie musi trzymać wszystkich obiektów w pamięci Eksploracja danych w Pythonie 3

Środowisko Python Biblioteki scipy, numpy, pandas, scikit-learn IPython Powyższy pakiet bibliotek można zainstalować w ramach dystrybucji Anaconda. Opcja polecana zwłaszcza dla użytkowników Windowsa. Edytor PyCharm lub VS Code Eksploracja danych w Pythonie 4

Biblioteka do wczytywania, zapisywania, filtrowania i modyfikowania zbiorów danych Operacje zoptymalizowane w Cythonie i C Podstawowe typy Series DataFrame Struktury danych i operacje inspirowane R Pozwala filtrować zbiory danych w sposób podobny do operatora [] w R Eksploracja danych w Pythonie 5

import pandas as pd df = pd.read_csv('test.csv', sep=';', na_values=['?']) df.head() # pierwsze 6 wierszy df.tail(10) # ostatnie 10 wierszy df.shape # krotka reprezentująca wymiary zbioru df['a'] # wybiera kolumnę A df[0:3] # pierwsze trzy wiersze df.loc[:,['a', 'B']] # wszystkie wiersze kolumn A i B df.iloc[1:3,1:3] # 2 i 3 wiersz, 2 i 3 kolumna Eksploracja danych w Pythonie 6

import pandas as pd df = pd.read_csv('test.csv', sep=';', na_values=['?']) df.head() # pierwsze 6 wierszy df.tail(10) # ostatnie 10 wierszy df.shape # krotka reprezentująca wymiary zbioru df['a'] # wybiera kolumnę A df[0:3] # pierwsze trzy wiersze df.loc[:,['a', 'B']] # wszystkie wiersze kolumn A i B df.iloc[1:3,1:3] # 2 i 3 wiersz, 2 i 3 kolumna Eksploracja danych w Pythonie 7

df.loc[:, 'Name'].unique() # unikatowe wartości df.name.unique() # inny sposób na operacje na kolumnie df.loc[:, 'Noname'] = 'nada...' # nowa kolumna df.loc[:, 'Lowname'] = df.name.str.lower() # str df.loc[:, 'Oname'] = df.name.str.contains('o') df.drop('noname', axis=1) # usuwanie (kolumn) df[(df.age > 50)] # filtrowanie; tak, nawiasy są ważne... df[~(df.age > 50)] #... nie, nie można korzystać z.loc[] df.to_csv('new.csv', sep=',', na_values=['n/a']) # zapis Eksploracja danych w Pythonie 8

df.sum() df.cumsum() # są też mean, median, idxmax # min, max, count, idxmin df.astype('float32') df.sort_values(by='lowname') df.apply(lambda x: x*23) # rzutowanie # sortowanie po indeksie # funkcje na osiach # Uwaga! Poniższe funkcje z reguły działają trochę inaczej # niż to sobie wyobrażamy... pd.concat([df1, df2, df3]) df1.append(df2) pd.merge(df1, df2, how='left', on=['key1', 'key2']) Eksploracja danych w Pythonie 9

Najpopularniejsza biblioteka do eksploracji danych w Pythonie Oferuje algorytmy do: klasyfikacji, regresji, grupowania, wstępnego przetwarzania danych, redukcji wymiarów, optymalizacji parametrów Oparta na NumPy, SciPy i matplotlib Darmowa, otwarta, aktywnie rozwijana Bardzo dobra dokumentacja! Eksploracja danych w Pythonie 10

from sklearn import datasets import sklearn.model_selection as skms from sklearn.metrics import classification_report from sklearn.svm import SVC digits = datasets.load_digits() n_samples = len(digits.images) # Uwaga! X i y muszą mieć wyłącznie wartości liczbowe! X = digits.images.reshape((n_samples, -1)) y = digits.target X_train, X_test, y_train, y_test = skms.train_test_split(x, y, test_size=0.3, random_state=0) Eksploracja danych w Pythonie 11

tuned_parameters = [{'kernel': ['rbf'], 'gamma': [1e-3, 1e-4], 'C': [1, 10, 100, 1000]}, {'kernel': ['linear'], 'C': [1, 10, 100, 1000]}] scores = ['precision', 'recall'] for score in scores: clf = skms.gridsearchcv(svc(c=1), tuned_parameters, cv=5, scoring='%s_weighted' % score) clf.fit(x_train, y_train) print(clf.best_params_) y_true, y_pred = y_test, clf.predict(x_test) print(classification_report(y_true, y_pred)) Eksploracja danych w Pythonie 12

Plotnine = ggplot w Pythonie Nowa biblioteka (i póki co wciąż rozwijana) Alternatywy to: matplotlib (na tej bibliotece opierają się wszystkie inne) seaborn (świetna do naukowych wizualizacji) plotly (znany przyjaciel, który ożywi wykresy) Eksploracja danych w Pythonie 13

from plotnine import * from plotnine.data import mtcars (ggplot(mtcars, aes('wt', 'mpg', color='factor(gear)')) + geom_point() + stat_smooth(method='lm') + facet_wrap('~gear')) Eksploracja danych w Pythonie 14

from plotnine import * from plotnine.data import mtcars (ggplot(mtcars, aes('wt', 'mpg', color='factor(gear)')) + geom_point() + stat_smooth(method='lm') + facet_wrap('~gear')) Eksploracja danych w Pythonie 15

IPython = interaktywna konsola Pythona Jupyter Notebook = strony z kodem wykonywalnym 1. Jupyter Notebook może być wykorzystywany wraz z językiem Markdown do łączenia kodu z opisem słownym 2. Jupyter obsługuje 40 różnych kerneli (języków) w tym kernel R 3. Do tworzenia notatników można wykorzystać przeglądarkę, Pycharm* lub JupyterLab* 4. Pliki *.ipynb są obsługiwane przez GitHuba Eksploracja danych w Pythonie 16

Dash = Shiny dla Pythona Eksploracja danych w Pythonie 17

1. Pobierz dane i notatnik ze strony prowadzącego 2. Pobrane pliki zapisz do nowego folderu 3. Otwórz Anaconda Prompt, przejdź do folderu projketu i wpisz jupyter notebook 4. Uruchom notatnik i wykonuj po kolei zadania Eksploracja danych w Pythonie 18

http://www.learnpython.org/ http://scikit-learn.org/stable/ https://www.kaggle.com/learn/ http://blog.kaggle.com/author/kevin-markham/ http://pandas.pydata.org/pandasdocs/stable/10min.html http://plotnine.readthedocs.io/en/stable/ http://seaborn.pydata.org/ https://jupyter.org/ Eksploracja danych w Pythonie 19