Skip to content

Instantly share code, notes, and snippets.

@pjastr
Created May 9, 2019 12:29
Show Gist options
  • Save pjastr/b3ecdebae69156c7a62eb8bc6378e06f to your computer and use it in GitHub Desktop.
Save pjastr/b3ecdebae69156c7a62eb8bc6378e06f to your computer and use it in GitHub Desktop.

Biblioteka Pandas i matplotlib

Uwaga: wszystkie polecenia należy wykonać samodzielnie. Można współpracować, ale przykłady powinny różnić się rozmiarem czy elementami serii lub ramek danych (o ile nie zaznaczono inaczej).

Ściągawka: https://github.com/pandas-dev/pandas/blob/master/doc/cheatsheet/Pandas_Cheat_Sheet.pdf

  1. Zapoznaj się z ćwiczeniami dostępnymi na stronie https://github.com/pjastr/pandas_exercises .

  2. Spośród przygotowanych plików csv z poprzednich ćwiczeń wybierz dwa, dla których wykonasz po 10 różnych operacji związanych z grupowaniem i filtrowaniem danych. Kod źródłowy umieść w plikach o nazwie jaa.py i jab.py (oddzielnie dla każdego z plików).

  3. (jac.py) Załaduj poniższą ramkę danych:

import pandas as pd
data = {
    "Miasto":['Olsztyn', 'Warszawa'],
    "Temperatura" : ["Prognoza", "Aktualna"],
    "Sty-2015":[2, -5],
    "Lut-2015":[-3, 4],
    "Mar-2015":[5, 12]
}

Następnie uporządkuj ramkę danych, aby była zgodną z koncepcją "tiny data".

  1. Zapoznaj się z galerią wykresów https://matplotlib.org/gallery/index.html oraz https://python-graph-gallery.com/.

  2. (jad.py) Wzorując się na https://matplotlib.org/gallery/lines_bars_and_markers/simple_plot.html#sphx-glr-gallery-lines-bars-and-markers-simple-plot-py stwórz wykres funkcji $y=e^x$ na przedziale $[-10,10]$.

  3. (jae.py) Przeanalizuj kod:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, np.pi * 2, 100)
plt.subplot(3, 1, 1)
plt.plot(x, np.sin(x), 'r')
plt.grid(True)
plt.xlim(0, np.pi * 2)
plt.subplot(3, 1, 2)
plt.plot(x, np.cos(x), 'g')
plt.grid(True)
plt.xlim(0, np.pi * 2)
plt.subplot(3, 1, 3)
plt.plot(x, np.sin(x), 'r', x, np.cos(x), 'g')
plt.grid(True)
plt.xlim(0, np.pi * 2)
plt.savefig("fig3.png", dpi=72)
plt.show()

Zmodyfikuj go tak, aby na jednym rysunku powstały kolejno wykresy funkcji kwadratowej, sześciennej a następnie nałożone na siebie. Przedział dla $x$ ustal na $[-5,5]$.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment