Skip to content

Instantly share code, notes, and snippets.

View RomanMachuga's full-sized avatar

Roman Machuga RomanMachuga

View GitHub Profile
@RomanMachuga
RomanMachuga / API_NBP.py
Last active July 2, 2023 15:45
Pobieranie danych z API NBP
"""
Program pobiera dane historyczne kursów walut (tabela A) z API NBP (Narodowy Bank Poski) - http://api.nbp.pl/
W jednym pobraniu można sciągnąć dane z okresu, który nie przekracza 93 dni (ograniczenie NBP)
Program pyta o datę początkową oraz końcową. Wynik jest zapisywany w pliku CSV
Przykładowy adres URL: https://api.nbp.pl/api/exchangerates/tables/a/2012-01-01/2012-01-31/?format=json
"""
import csv
import os
import sys
@RomanMachuga
RomanMachuga / przeksztalcanie_plikow_csv.py
Last active July 3, 2023 07:08
Konwertowanie plików CSV
"""
Skrypt opracowany dla przekształcania bazy pacjetów przychodni przez wyrównanie ilości kolumn po nazwie każdego leku
Program po kolei pobiera pliki CSV z folderu, przekształca je, zmieniając nazwy kolumn i dodając brakujące. Zmodyfikowany dataset z powrotem zapisywany do pliku CSV
"""
import glob
import os
import pandas as pd
@RomanMachuga
RomanMachuga / dataset.py
Last active July 3, 2023 07:10
Dataset
"""
Funkcjonalność, którą dostarcza moduł:
- wczytanie datasetu (funkcja, która po podaniu ścieżki wczytuje dane z pliku do listy. Dodatkowo funkcja przyjmuje parametr, określający czy pierwszy wiersz pliku zawiera etykiety kolumn czy nie. Jeżeli tak, to etykiety wczytywane są do oddzielnej listy);
- wypisanie etykiet (funkcja wypisująca etykiety lub komunikat, że etykiet nie było w danym datasecie);
- wypisanie danych datasetu (funkcja wypisuje kolejne wiersze datasetu. Bez podania parametrów wypisywany jest cały dataset, ale możliwe też podanie 2 parametrów, które określają przedział, który ma zostać wyświetlony);
- podział datasetu na zbiór treningowy, testowy i walidacyjny (funkcja przyjmuje 3 parametry określające procentowo jaka część głównego zbioru danych trafia do poszczególnych zbiorów);
- wypis liczby klas decyzyjnych;
- wypisz dane dla podanej wartości klasy decyzyjnej (wypisuje wiersze z zadaną wartością klasy decyzyjnej);
- zapisanie danych do pliku csv (jako
@RomanMachuga
RomanMachuga / lista_brakujacych_elementow.py
Last active June 2, 2023 16:13
Lista brakujących elementów
"""
Lista brakujących elementów.
Podana jest lista, zawierająca elementy o wartościach 1-n. Program sprawdza jakich elementów brakuje 1-n = [1,2,3,4,5,...,10], na przykład:
- n=10
- wejście: [2,3,7,4,9], 10
- wyjście: [1,5,6,8,10]
"""
import os
import sys
@RomanMachuga
RomanMachuga / generator_kodow_pocztowych.py
Last active June 2, 2023 16:06
Generator kodów pocztowych
"""
Generator kodów pocztowych.
Program przyjmuje 2 stringi, na przykład '79-900' i '80-155'. Dalej zwraca listę kodów pomiędzy nimi
"""
import os
from typing import List
def code_verification(code_str: str) -> str:
@RomanMachuga
RomanMachuga / API_CEPiK.py
Last active October 7, 2025 11:47
Pobieranie danych z API CEPiK
"""
Program pobiera dane z API CEPiK (Centralna Ewidencja Pojazdów i Kierowców) - http://www.cepik.gov.pl/interfejs-dla-cepik
Program pobiera dane dla wszystkich województw dla podanego roku (każdy miesiąc jako osobny plik). Wynik jest zapisywany w plikach CSV w katalogu z kodem województwa, na przykład "w14".
Przykładowy adres URL: https://api.cepik.gov.pl/pojazdy?wojewodztwo=14&data-od=20100101&data-do=20101231&typ-daty=2&tylko-zarejestrowane=true&pokaz-wszystkie-pola=true&limit=500
"""
import csv
import os
import time
from datetime import datetime