Pandas sortuj według kolumny

Pandas sortuj według kolumny
Python jest doskonałym narzędziem do przetwarzania danych, dzięki dobrze prosperującej społeczności narzędzi Python zorientowanych na dane. Pandy są również jednym z tych programów i znacznie upraszcza import i analizę danych. Sortowanie danych w Pythonie można wykonać na różne sposoby. Kiedy użytkownik chce sortować konkretny zestaw danych zgodnie z jakąś konkretną kolumną, pojawia się pytanie. Zgodnie z dostarczoną kolumną metoda sort_values ​​() w pandach organizuje zestaw danych w kierunku rosnącym lub malejącym. Różni się od posortowanej metody Pythona, ponieważ nie może sortować zestawu danych i nie może wybrać określonej kolumny. Dlatego postanowiliśmy napisać ten artykuł, aby uprościć sortowanie za pomocą funkcji sort_values ​​(). Zaczynajmy.

Przykład 01:

Zacznijmy od naszego pierwszego przykładu dzisiejszego artykułu na temat sortowania ramek pandy za pośrednictwem kolumn. W tym celu musisz dodać obsługę pandy w kodzie za pomocą obiektu „PD” i zaimportować pandy. Następnie rozpoczęliśmy kod z inicjowaniem słownika DIC1 z mieszanymi typami par kluczowych. Większość z nich to ciągi, ale ostatni klucz zawiera listę typu liczb całkowitych jako jej wartość. Teraz ten słownik DIC1 został przekonwertowany na Pandas DataFrame, aby wyświetlić go w tabelarycznej formie danych za pomocą funkcji DataFrame (). Powstała ramka danych zostanie zapisana na zmiennej „D”. Funkcja drukowania jest tutaj, aby wyświetlić oryginalną ramkę danych na konsoli Spyder 3 za pomocą zmiennej „D”. Teraz używaliśmy funkcji sort_values ​​() za pomocą ramki danych „D”, aby sortować ją zgodnie z kolejnością rosnącą kolumny „C3” z ramki danych i zapisać ją do zmiennej D1. Ta ramka danych posortowana D1 zostanie wydrukowana w konsoli Spyder 3 za pomocą przycisku Uruchom.

importować pandy jako PD
DIC1 = „C1”: [„John”, „William”, „laila”], „c2”: [„jack”, „warto”, „Sky”], „c3”: [36, 50, 25]
D = PD.DataFrame (DIC1)
Drukuj („\ n Oryginalna ramka danych: \ n”, d)
D1 = D.sort_values ​​(„c3”)
Drukuj („\ n posortowany według kolumny 3: \ n”, d1)

Po uruchomieniu tego kodu mamy oryginalną ramkę danych, a następnie sortowaną ramkę danych zgodnie z kolejnością rosnącą kolumny C3.

Załóżmy, że chcesz zamówić lub sortować ramkę danych w kolejności malejącej; możesz to zrobić za pomocą funkcji sort_values ​​(). Wystarczy dodać wznoszenie = false w jego parametrach. Więc wypróbowaliśmy ten sam kod z tą nową aktualizacją. Tym razem sortowaliśmy ramkę danych zgodnie z kolejnością malejącej kolumny C2 i wyświetlając ją na konsoli.

importować pandy jako PD
DIC1 = „C1”: [„John”, „William”, „laila”], „c2”: [„jack”, „warto”, „Sky”], „c3”: [36, 50, 25]
D = PD.DataFrame (DIC1)
Drukuj („\ n Oryginalna ramka danych: \ n”, d)
D1 = D.sort_values ​​(„c1”, wznowienie = false)
Drukuj („\ n sortowany w kolejności malejącej kolumny 1: \ n”, d1)

Po uruchomieniu zaktualizowanego kodu otrzymaliśmy oryginalną ramkę wyświetloną na konsoli. Następnie wyświetlono posortowaną ramkę danych zgodnie z kolejnością malejącą kolumny C3.

Przykład 02:

Zacznijmy od innego przykładu, aby zobaczyć działanie funkcji sort_values ​​() pand. Ale ten przykład będzie nieco inny niż powyższy przykład. Będziemy sortować ramkę danych zgodnie z dwiema kolumnami. Zacznijmy więc ten kod z biblioteką pandy jako import „PD” na pierwszym wierszu. Słownik typu liczb całkowitych DIC1 został zdefiniowany i ma klucze typu ciągów. Słownik został ponownie przekonwertowany na ramkę danych przy użyciu funkcji pandas Everlasting DataFrame () i zapisano na zmiennej „D”. Metoda drukowania wyświetli ramkę danych „D” na konsoli Spyder 3. Teraz ramka danych będzie sortowana za pomocą funkcji „sort_values ​​()”, przyjmując dwa nazwy kolumn, C1 i C2, I.mi. Klucze. Kolejność sortowania została rozstrzygnięta jako rosnąca = prawda. Instrukcja drukowania wyświetli zaktualizowaną i posortowaną ramkę danych „D” na ekranie narzędzi Python.

importować pandy jako PD
DIC1 = 'c1': [3, 5, 7, 9], „c2”: [1, 3, 6, 8], „c3”: [23, 18, 14, 9]
D = PD.DataFrame (DIC1)
Drukuj („\ n Oryginalna ramka danych: \ n”, d)
D1 = D.sort_values ​​(by = ['c1', 'c2'], aScending = true)
Drukuj („\ n posortowany w kolejności malejącej kolumny 1 i 2: \ n”, d1)

Po zakończeniu tego kodu wykonaliśmy go w Spyder 3 i posortowaliśmy poniższy wynik zgodnie z kolejnością rosnącą kolumn C1 i C2.

Przykład 03:

Spójrzmy na ostatni przykład wykorzystania funkcji sort_values ​​(). Tym razem zainicjowaliśmy słownik dwóch list różnych typów, i.mi. sznurki i liczby. Słownik został przekonwertowany na zestaw ramek danych za pomocą funkcji pandas „dataFrame ()”. Rama danych „D” została wydrukowana taka, jak jest. Dwa razy sortowaliśmy funkcję „sort_values ​​()”, aby sortować ramkę danych zgodnie z kolumną „wiek” i „nazwa” kolumny osobno w dwóch różnych liniach. Obie posortowane ramki danych zostały wydrukowane za pomocą metody drukowania.

importować pandy jako PD
DIC1 = „Nazwa”: [„John”, „William”, „laila”, „Bryan”, „jees”], „wiek”: [15, 10, 34, 19, 37]
D = PD.DataFrame (DIC1)
Drukuj („\ n Oryginalna ramka danych: \ n”, d)
D1 = D.sort_values ​​(według = „wiek”, na_position = „First”)
Drukuj („\ n posortowany w kolejności rosnącej kolumny„ wiek ”: \ n”, d1)
D1 = D.sort_values ​​(według = „name”, na_position = „First”)
Drukuj („\ n posortowany w kolejności rosnącej kolumny„ Nazwa ”: \ n”, d1)

Po wykonaniu tego kodu mamy pierwszą oryginalną ramkę danych. Następnie wyświetlono sortowaną ramkę danych według kolumny „wiek”. Na koniec ramka danych została posortowana zgodnie z kolumną „Nazwa” i wyświetlona poniżej.

Wniosek:

Ten artykuł pięknie wyjaśnił funkcję „sort_values ​​()”, aby sortować dowolną ramkę danych zgodnie z różnymi kolumnami. Widzieliśmy, jak sortować z jedną kolumną dla więcej niż 1 kolumny w Pythonie. Wszystkie przykłady można wdrożyć na dowolnym narzędziu Python.