Ramka danych to serce analizy — odpowiednik arkusza kalkulacyjnego Excel. Każda kolumna to wektor (może mieć inny typ danych), każdy wiersz to jedna obserwacja (np. jeden pracownik, jeden kraj, jeden rok).
# Podstawowe informacje o ramcelen(pracownicy) # liczba wierszylen(pracownicy.columns) # liczba kolumnpracownicy.shape # wymiary (wiersze, kolumny) jako krotkapracownicy.columns # nazwy kolumnpracownicy.dtypes # typy kolumnpracownicy.info() # szczegółowe informacje zbiorczo
3.2 Wczytywanie danych z pliku
W praktyce rzadko tworzymy dane ręcznie — najczęściej wczytujemy je z pliku CSV lub Excel.
filter(pracownicy, dzial =="IT"& staz_lat >2) # oba warunki (AND)
#> imie pensja dzial staz_lat czy_menedz
#> 1 Anna 4500 IT 3 FALSE
filter(pracownicy, dzial =="IT"| dzial =="HR") # jeden z warunków (OR)
#> imie pensja dzial staz_lat czy_menedz
#> 1 Anna 4500 IT 3 FALSE
#> 2 Kasia 4800 IT 2 FALSE
#> 3 Marek 6100 HR 10 TRUE
# --- Wiersze I kolumny jednocześnie (pipe operator) ---pracownicy |>filter(pensja >5000) |>select(imie, pensja)
#> imie pensja
#> 1 Piotr 5200
#> 2 Marek 6100
#> 3 Zofia 5500
# --- Wybieranie kolumn ---# Jedna kolumna (zwraca Series)pracownicy["pensja"]# Wiele kolumn (zwraca DataFrame)pracownicy[["imie", "pensja"]]pracownicy.drop(columns=["czy_menedz"]) # wszystkie OPRÓCZ tej
# --- Wybieranie wierszy ---# Konkretne wiersze po pozycji (iloc — pamiętamy: od 0!)pracownicy.iloc[0] # wiersz 0 (pierwszy)pracownicy.iloc[1:4] # wiersze 1–3 (koniec wyłączony)# Filtrowanie po warunkupracownicy[pracownicy["dzial"] =="IT"]pracownicy[pracownicy["pensja"] >5000]pracownicy[(pracownicy["dzial"] =="IT") & (pracownicy["staz_lat"] >2)] # ANDpracownicy[(pracownicy["dzial"] =="IT") | (pracownicy["dzial"] =="HR")] # OR# Metoda query() — czytelniejszy zapispracownicy.query('dzial == "IT" and staz_lat > 2')
# --- Wiersze I kolumny jednocześnie ---pracownicy.loc[pracownicy["pensja"] >5000, ["imie", "pensja"]]