Python | Pandy Odwróć dzielenie ciągów na dwie listy/kolumny za pomocą str.rsplit()

Pandy zapewniają metodę dzielenia łańcucha wokół brakującego ogranicznika lub ogranicznika. Wiersz można następnie zapisać jako listę w serii lub można go również użyć do utworzenia wielokolumnowej ramki danych z jednego wiersza. rsplit () działa podobnie do .split () ale rsplit() zaczyna dzielić od prawej strony. Ta funkcja jest również przydatna, gdy ogranicznik / ogranicznik występuje więcej niż jeden raz.

.str musi być poprzedzony prefiksem za każdym razem przed wywołaniem tej metody, aby odróżnić ją od domyślnej funkcji w Python, w przeciwnym razie wygeneruje błąd.

Składnia:
Series.str.rsplit (pat = brak, n = - 1, expand = fałsz)

< b> Parametry:
wzór: Wartość ciągu, separator lub ogranicznik do oddzielenia ciągu.
n: Liczby maksymalnych separacji do wykonania w jednym ciągu, domyślnie -1, co oznacza wszystko.
expand: wartość logiczna, zwraca ramkę danych z inną wartością w różnych kolumnach, jeśli jest to prawda. W przeciwnym razie zwraca serię z listą ciągów

Typ zwracany: Seria listy lub Ramka danych w zależności od parametru rozwinięcia

Do pobrania użyto plik CSV, kliknij tutaj.

W poniższych przykładach użyta ramka danych zawiera dane dotyczące niektórych graczy NBA. Obraz ramki danych przed jakąkolwiek operacją jest dołączony poniżej.

Przykład nr 1: Dzielenie linii z prawej strony na listę

W tym przykładzie wiersz w kolumnie Zespół jest dzielony za każdym razem, gdy pojawia się „t”. Parametr n jest utrzymywany na poziomie 1, więc maksymalna liczba podziałów na wiersz wynosi 1. Ponieważ użyto rsplit(), wiersz zostanie podzielony od prawej strony.

< td class = "code">

# importuj moduł pandy

importuj pandy jako pd


# odczyt pliku CSV z adresu URL

dane = pd.read_csv ( " https://media.python.engineering/wp-content/uploads /nba.csv " )


# usuwanie pustych kolumn w celu uniknięcia błędów

data.dropna (inplace = Prawda )


# nowa ramka danych z rozdzielanymi kolumnami

data [ "Zespół" ] = data [ "Zespół" ]. str . rsplit ( "t" , n = 1 rozwiń = False )


# display
dane

Dane wyjściowe:
Jak pokazano na obrazku wyjściowym, linia została podzielona przez "t" w "Celtics" i "t" w "Boston". Dzieje się tak, ponieważ podział nastąpił w odwrotnej kolejności. Ponieważ parametr rozwinięcia pozostawiono False, została zwrócona lista.

Przykład nr 2: Tworzenie pojedynczych kolumn z wiersza za pomocą .rsplit()

W tym przykładzie kolumna Name jest oddzielona spacją (""), a parametr extension jest ustawiony na True, co oznacza, że ​​zwróci ramkę danych ze wszystkimi wierszami rozdzielonymi kolejna kolumna ... Ramka danych jest następnie używana do tworzenia nowych kolumn, a kolumna starej nazwy jest usuwana przy użyciu metody .drop().

Parametr n jest utrzymywany na poziomie 1, ponieważ mogą występować również drugie imiona (więcej niż jedna spacja w wierszu). W tym przypadku rsplit() jest przydatny, ponieważ oblicza od prawej strony, a zatem wiersz drugiego imienia zostanie uwzględniony w kolumnie nazwiska, ponieważ maksymalna liczba podziałów jest zachowana 1.

< /p>

# import modułu pandas

importuj pandy jako pd


# odczyt pliku CSV z adresu URL

data = pd.read_csv ( " https://media.python.engineering/wp-content/uploads /nba.csv )


# usuwanie null co lumns o wartości, aby uniknąć błędów

data.dropna (inplace = True )


# nowa ramka danych z ogranicznikami kolumny

new = dane [ "Nazwa" ]. str . split ( " " , n = 1 rozwiń = True )


# utwórz osobną kolumnę nazwy z nowej ramki danych

dane [ "Imię" ] = new [ 0 ]


# utwórz oddzielną kolumnę nazwiska z nowej ramki danych

data [ "Nazwisko" ] = new [ 1 ]


# Usuń stare kolumny Nazwa

data.drop (kolumny = [ "Name" ], inplace = True )


# wyświetlanie df
dane

< b> Dane wyjściowe:
Jak pokazano na obrazie wyjściowym, dwie nowe kolumny zostały utworzone, a stara kolumna Name została usunięta.

Mamy nadzieję, że ten artykuł pomógł Ci rozwiązać problem. Oprócz Python | Pandy Odwróć dzielenie ciągów na dwie listy/kolumny za pomocą str.rsplit() sprawdź inne tematy związane z Python functions.

Chcesz się wyróżniać w Pythonie? Zobacz naszą recenzję najlepszych kursów online Pythona 2023. Jeśli interesujesz się Data Science, sprawdź także, jak nauczyć się programowania w R.

Nawiasem mówiąc, ten materiał jest również dostępny w innych językach:



Davies Porretti

New York | 2023-02-05

Może są jakieś inne odpowiedzi? Co Python | Pandy Odwróć dzielenie ciągów na dwie listy/kolumny za pomocą str.rsplit() dokładnie oznacza?. Mam tylko nadzieję, że już się nie pojawi

Walter Krasiko

California | 2023-02-05

Przygotowywałem się do mojej rozmowy o kodowaniu, dzięki za wyjaśnienie tego - Python | Pandy Odwróć dzielenie ciągów na dwie listy/kolumny za pomocą str.rsplit() w Pythonie nie jest najprostszy. Wrócimy jutro z informacją zwrotną

Jan Nickolson

Milan | 2023-02-05

Dzięki za wyjaśnienie! Utknąłem z Python | Pandy Odwróć dzielenie ciągów na dwie listy/kolumny za pomocą str.rsplit() przez kilka godzin, w końcu się udało 🤗. Sprawdzane wczoraj, działa!

Shop

Gifts for programmers

Learn programming in R: courses

$FREE
Gifts for programmers

Best Python online courses for 2022

$FREE
Gifts for programmers

Best laptop for Fortnite

$399+
Gifts for programmers

Best laptop for Excel

$
Gifts for programmers

Best laptop for Solidworks

$399+
Gifts for programmers

Best laptop for Roblox

$399+
Gifts for programmers

Best computer for crypto mining

$499+
Gifts for programmers

Best laptop for Sims 4

$

Latest questions

PythonStackOverflow

Common xlabel/ylabel for matplotlib subplots

1947 answers

PythonStackOverflow

Check if one list is a subset of another in Python

1173 answers

PythonStackOverflow

How to specify multiple return types using type-hints

1002 answers

PythonStackOverflow

Printing words vertically in Python

909 answers

PythonStackOverflow

Python Extract words from a given string

798 answers

PythonStackOverflow

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

606 answers

PythonStackOverflow

Python os.path.join () method

384 answers

PythonStackOverflow

Flake8: Ignore specific warning for entire file

360 answers

News


Wiki

Python | How to copy data from one Excel sheet to another

Common xlabel/ylabel for matplotlib subplots

Check if one list is a subset of another in Python

How to specify multiple return types using type-hints

Printing words vertically in Python

Python Extract words from a given string

Cyclic redundancy check in Python

Finding mean, median, mode in Python without libraries

Python add suffix / add prefix to strings in a list

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

Python - Move item to the end of the list

Python - Print list vertically