W świecie analizy danych obsługa dużych zbiorów danych może być zniechęcającym zadaniem. Jedną z istotnych części tego procesu jest filtrowanie danych w celu uzyskania odpowiednich informacji. Jeśli chodzi o Pythona, potężną bibliotekę pandy przychodzi nam z pomocą. W tym artykule omówimy jak filtrować wszystkie kolumny w pandas DataFrame. Wyjaśnimy krok po kroku kod i zapewnimy dogłębne zrozumienie bibliotek i funkcji, których można użyć w przypadku podobnych problemów.
Przedstawiamy pandy
to biblioteka typu open source, która zapewnia łatwe w użyciu struktury danych i narzędzia do analizy danych dla języka programowania Python. Odgrywa znaczącą rolę w ekosystemie nauki o danych i stał się niezbędnym narzędziem dla każdego naukowca danych lub analityka pracującego z Pythonem. Wśród swoich funkcji pandy oferują dwie podstawowe struktury danych: Ramka danych i Serie. DataFrame to dwuwymiarowa tabela z oznakowanymi osiami (wierszami i kolumnami), podczas gdy Series to jednowymiarowa tablica z etykietami.
W tym artykule skupimy się na filtrowaniu określonych wartości obecnych w dowolnej kolumnie pandas DataFrame. W tym celu użyjemy pand .jest w() funkcja wraz z maskowaniem boolowskim.
Filtrowanie ramki danych
Aby przefiltrować ramkę DataFrame w pandach, wykonaj następujące kroki:
1. Zaimportuj bibliotekę pandas
2. Utwórz ramkę DataFrame lub załaduj ją z pliku
3. Zdefiniuj wartości, które chcesz filtrować
4. Zastosuj filtr za pomocą funkcji `.isin()` i maskowania boolowskiego
5. Wyświetl przefiltrowaną ramkę DataFrame
Zagłębmy się w kod, aby zrozumieć, jak to działa.
import pandas as pd # Creating a DataFrame data = {'Column1': [1, 2, 3, 4, 5], 'Column2': [10, 20, 30, 40, 50], 'Column3': ['A', 'B', 'A', 'B', 'A']} df = pd.DataFrame(data) # Define the values to filter filter_values = [1, 3, 5, 'A'] # Apply the filter using .isin() and boolean masking filtered_df = df[df.isin(filter_values).any(axis=1)] # Display the filtered DataFrame print(filtered_df)
W tym przykładzie najpierw importujemy bibliotekę pandas i tworzymy DataFrame z trzema kolumnami. Definiujemy wartości, które chcemy przefiltrować (1, 3, 5 i „A”) i stosujemy filtr za pomocą funkcji `.isin()` połączonej z maskowaniem boolowskim. Funkcja `any(axis=1)` sprawdza, czy jakakolwiek wartość w wierszu spełnia kryteria filtrowania. Na koniec drukujemy przefiltrowaną ramkę DataFrame.
Funkcja .isin() i maskowanie boolowskie
Połączenia .jest w() Funkcja w pandach to wszechstronne narzędzie do filtrowania danych na podstawie listy lub zestawu wartości. Zwraca boolowską ramkę DataFrame o takim samym kształcie jak oryginalna, wskazując, które elementy są obecne na podanej liście lub zestawie. W naszym przypadku przekazujemy listę wartości, które chcemy przefiltrować.
Maskowanie boolowskie to technika używana w pandach do filtrowania danych według elementów. Polega na zastosowaniu maski logicznej (tablicy wartości True i False) do struktury danych w celu przefiltrowania jej elementów. W kontekście naszego problemu używamy maskowania boolowskiego wraz z funkcją .isin() w celu pobrania wierszy zawierających żądane wartości.
Dzięki jasnemu zrozumieniu biblioteki pandas, struktur DataFrame i funkcji .isin() możemy skutecznie filtrować dowolne pandy DataFrame. Techniki te pozwalają nam eksplorować duże zbiory danych i z łatwością wydobywać cenne spostrzeżenia, dzięki czemu pandas jest biblioteką do analizy danych w Pythonie.