Romans z pandami

Apr 06 2023
Jeśli zajmujesz się nauką o danych i używasz Pythona jako podstawowego narzędzia, musisz znać Pandy, więc od razu przechodzę do tematu. Głównym zamiarem stworzenia tego dokumentu jest zgromadzenie wszystkich podstawowych ofert pand w jednym miejscu, abyśmy nie musieli przeszukiwać wielu miejsc, gdy ich potrzebujemy.

Jeśli zajmujesz się nauką o danych i używasz Pythona jako podstawowego narzędzia, musisz znać Pandy, więc od razu przechodzę do tematu.

Głównym zamiarem stworzenia tego dokumentu jest zgromadzenie wszystkich podstawowych ofert pand w jednym miejscu, abyśmy nie musieli przeszukiwać wielu miejsc, gdy ich potrzebujemy.

lista ofert w różnych segmentach

Struktury danych:

Metody serii:

  • series = pd.Series(data): tworzy nowy obiekt serii z tablicy lub listy danych.
  • series.values: zwraca wartości serii jako tablicę NumPy.
  • series.index: zwraca indeks serii.
  • series.head(n): zwraca pierwsze n wierszy serii.
  • series.tail(n): zwraca ostatnie n wierszy serii.
  • series.describe(): zapewnia zbiorcze statystyki serii.
  • series.unique(): zwraca unikalne wartości w serii.
  • series.isnull(): zwraca maskę logiczną wskazującą, które wartości są puste.
  • series.dropna(): zwraca nową serię z usuniętymi wartościami pustymi.
  • df.drop(columns=['column_name']): usuwa kolumnę z DataFrame.
  • series.fillna(value): zwraca nową serię z wartościami pustymi wypełnionymi określoną wartością.
  • df = pd.DataFrame(data): tworzy nowy obiekt DataFrame ze słownika, tablicy NumPy lub listy słowników.
  • df.columns: zwraca etykiety kolumn DataFrame.
  • df.index: zwraca etykiety wierszy DataFrame.
  • df.memory_usage: zwraca wykorzystanie pamięci przez każdą kolumnę w bajtach.
  • df.head(n): zwraca pierwsze n wierszy DataFrame.
  • df.tail(n): zwraca ostatnie n wierszy DataFrame.
  • df.shape: zwraca krotkę reprezentującą wymiary DataFrame.
  • df.info(): zawiera informacje o DataFrame
  • df.describe(): zapewnia podsumowanie statystyk DataFrame.
  • df.groupby(column): grupuje DataFrame według określonej kolumny.
  • df.merge(other_df): łączy DataFrame z inną DataFrame na podstawie wspólnej kolumny.
  • df.pivot_table(): tworzy tabelę przestawną z DataFrame.

Opisowe statystyki:

  • df.mean(): oblicza średnią
  • df.median(): oblicza medianę
  • df.mode(): oblicza tryb
  • df.corr(): oblicza korelację między kolumnami
  • df.cov(): oblicza kowariancję między kolumnami
  • df.quantile(0.25): oblicza pierwszy kwartyl

Obsługa brakujących wartości:

  • df.isnull(): zwraca DataFrame z wartościami boolowskimi wskazującymi, które komórki zawierają brakujące wartości.
  • df.dropna(): zwraca nową ramkę DataFrame z usuniętymi wartościami pustymi.
  • df.fillna(value): wypełnia wszystkie brakujące wartości określoną wartością.
  • df.interpolate(method='linear'):Wypełnij wartości NaN metodą interpolacji
  • df.duplicated(): zwraca szereg logiczny wskazujący, które wiersze są duplikatami.
  • df.drop_duplicates(): usuwa wszystkie zduplikowane wiersze.
  • df.astype(): konwertuje typ danych kolumny DataFrame na określony typ danych.
  • str.replace(old, new): zastępuje wszystkie wystąpienia określonego ciągu innym ciągiem.
  • str.split(): dzieli łańcuch na listę podłańcuchów.
  • str.strip(): usuwa początkowe i końcowe białe znaki z łańcucha.
  • df.clip(lower, upper): obcina wszystkie wartości w DataFrame tak, aby mieściły się w określonym zakresie.
  • df.rename(columns={'old_name': 'new_name'}): zmienia nazwę kolumny w DataFrame.
  • str.lower(): konwertuje wszystkie znaki w łańcuchu na małe litery.
  • str.upper(): konwertuje wszystkie znaki w łańcuchu na wielkie litery.
  • str.strip(): usuwa początkowe i końcowe białe znaki z łańcucha.
  • df.apply(function): stosuje funkcję do każdego elementu w DataFrame.
  • df.mean(): oblicza średnią z każdej kolumny w DataFrame.
  • df.std(): oblicza odchylenie standardowe każdej kolumny w DataFrame.

Filtrowanie danych:

  • df.loc[condition]: zwraca wiersze DataFrame, które spełniają określony warunek.
  • df.query(condition): zwraca wiersze DataFrame, które spełniają określony warunek, używając ciągu zapytania.
  • df.sort_values(by=column): sortuje DataFrame według określonej kolumny.
  • df.sort_index(): sortuje DataFrame według indeksu.
  • df.groupby(column): grupuje DataFrame według określonej kolumny.
  • grouped.aggregate(function): stosuje funkcję agregacji do każdej grupy.
  • df.merge(other_df): łączy DataFrame z inną DataFrame na podstawie wspólnej kolumny.
  • df.join(other_df): łączy DataFrame z inną DataFrame na podstawie indeksu.
  • pd.concat([df1, df2]): łączy ze sobą dwie lub więcej ramek danych.
  • df1.append(df2): dołącza jedną DataFrame do innej DataFrame.
  • df.melt(id_vars=column): odwraca ramkę DataFrame z szerokiego formatu do długiego formatu.
  • df.pivot(index, columns, values): tworzy nową ramkę DataFrame z określonym indeksem, kolumnami i wartościami.
  • df.stack(): obraca DataFrame z szerokiego formatu do długiego formatu.
  • df.groupby(column).sum(): oblicza sumę każdej grupy.
  • df.groupby(column).mean(): oblicza średnią z każdej grupy.
  • df.groupby(column).max(): oblicza maksimum każdej grupy.
  • df.rolling(window).mean(): oblicza średnią kroczącą kolumny.
  • df.expanding().sum(): oblicza rosnącą sumę kolumny.

Manipulacja łańcuchem:

  • df['column_name'].str.lower(): konwertuje wszystkie znaki w kolumnie na małe litery.
  • df['column_name'].str.upper(): konwertuje wszystkie znaki w kolumnie na wielkie litery.
  • df['column_name'].str.strip(): usuwa początkowe i końcowe spacje z kolumny.
  • df['column_name'].str.replace('old_value', 'new_value'): zastępuje wszystkie wystąpienia wartości w kolumnie nową wartością.
  • df['column_name'].str.contains('pattern'): sprawdza, czy każdy element w kolumnie pasuje do wzorca wyrażenia regularnego.
  • df['column_name'].str.extract('pattern'): wyodrębnia pierwsze wystąpienie wzorca wyrażenia regularnego z każdego elementu w kolumnie.
  • df['column_name'].str.split('delimiter'): dzieli każdy element w kolumnie na listę tokenów na podstawie ogranicznika.
  • df[df['column_name'].str.contains('pattern')]: filtruje wiersze w DataFrame na podstawie tego, czy wzorzec wyrażenia regularnego pasuje do wartości w kolumnie.
  • df[df['column_name'].str.len() > 10]: filtruje wiersze w DataFrame na podstawie długości wartości w kolumnie.
  • df['column_name'].str.cat(sep='delimiter'): łączy wszystkie elementy w kolumnie w pojedynczy łańcuch oddzielony ogranicznikiem.
  • df['column_name'].str.get_dummies(): tworzy zakodowaną na gorąco ramkę DataFrame z kolumny zawierającej wiele wartości kategorycznych.

Wykresy liniowe:

  • df.plot(): tworzy wykres liniowy DataFrame.
  • df.plot(kind='bar'): tworzy pionowy wykres słupkowy DataFrame.
  • df.plot(kind='barh'): tworzy poziomy wykres słupkowy DataFrame.
  • df.plot(kind='pie'): tworzy wykres kołowy DataFrame.
  • df.plot(kind='scatter', x='column1', y='column2'): tworzy wykres punktowy dwóch kolumn w DataFrame.
  • df.plot(kind='hist'): tworzy histogram DataFrame.
  • df.plot(kind='box'): tworzy wykres pudełkowy DataFrame.
  • df.plot(kind='area'): tworzy wykres warstwowy DataFrame.

Odczyt danych:

  • pd.read_csv(file_path): odczytuje dane z pliku CSV do DataFrame.
  • pd.read_excel(file_path): odczytuje dane z pliku Excela do DataFrame.
  • pd.read_sql(query, connection): odczytuje dane z bazy danych SQL do DataFrame.
  • pd.read_json(file_path): odczytuje dane z pliku JSON do DataFrame.
  • pd.read_html(url): odczytuje dane ze strony HTML na listę ramek danych.
  • pd.read_clipboard(): odczytuje dane ze schowka do DataFrame.
  • df.to_csv(file_path): zapisuje dane z DataFrame do pliku CSV.
  • df.to_excel(file_path): zapisuje dane z DataFrame do pliku Excel.
  • df.to_sql(table_name, connection): zapisuje dane z DataFrame do tabeli bazy danych SQL.
  • df.to_json(file_path): zapisuje dane z DataFrame do pliku JSON.

Indeksowanie czasu:

  • pd.to_datetime(date_string): konwertuje ciąg daty na obiekt datetime.
  • df.set_index('datetime_column'): ustawia kolumnę datetime jako indeks DataFrame.
  • df.resample('D').mean(): ponownie próbkuje DataFrame do dziennej częstotliwości i oblicza średnią dla każdego dnia.
  • df.resample('M').sum(): ponownie próbkuje ramkę DataFrame do częstotliwości miesięcznej i oblicza sumę dla każdego miesiąca.
  • df.shift(1): przesuwa wartości w DataFrame o jeden okres.
  • df.rolling(window=2).mean(): oblicza średnią kroczącą DataFrame w oknie dwóch okresów.
  • df.tz_localize('UTC'): ustawia strefę czasową DataFrame na UTC.
  • df.tz_convert('US/Pacific'): konwertuje strefę czasową DataFrame na US Pacific.
  • pd.date_range(start='2020-01-01', end='2020-12-31', freq='D'): generuje zakres dat od 1 stycznia 2020 do 31 grudnia 2020 z częstotliwością dzienną.

Inżynieria funkcji:

  • df['new_column'] = df['column_1'] + df['column_2']: tworzy nową kolumnę przez dodanie dwóch istniejących kolumn.
  • df['new_column'] = df['column'].apply(function): stosuje funkcję do każdej wartości w kolumnie, aby utworzyć nową kolumnę.
  • df['new_column'] = pd.cut(df['column'], bins): tworzy nową kolumnę, umieszczając w koszu zmienną ciągłą.

To lista kilku regularnie stosowanych metod, ale pandy mają znacznie więcej do zaoferowania. Zapoznaj się z oficjalną dokumentacją pandy, aby uzyskać bardziej szczegółową wiedzę. Ponadto wszystkie te metody mogą ulec zmianie w zależności od nowej wersji pandy, więc sprawdź oficjalne wydanie przed faktycznym użyciem.

Odniesienie