Pandas bieten eine Methode, um eine Zeichenfolge um ein fehlendes Trennzeichen oder Trennzeichen herum aufzuteilen. Die Zeile kann dann als Liste in einer Reihe gespeichert werden, oder sie kann auch verwendet werden, um einen mehrspaltigen Datenrahmen aus einer einzelnen Zeile zu erstellen. rsplit ()
funktioniert ähnlich wie .split ()
aber rsplit ()
beginnt mit der Aufteilung von der rechten Seite. Diese Funktion ist auch nützlich, wenn das Trennzeichen / Trennzeichen mehr als einmal vorkommt.
.str muss jedes Mal vorangestellt werden, bevor diese Methode aufgerufen wird, um sie zu unterscheiden von der Standardfunktion in Python, sonst wird ein Fehler ausgegeben.
Syntax:
Series.str.rsplit (pat = None, n = - 1 , expand = False)Parameter:
pat: Zeichenfolgenwert, Trennzeichen oder Trennzeichen zum Trennen der Zeichenfolge bei.
n: Anzahl der maximalen Trennungen, die in einer einzelnen Zeichenfolge vorgenommen werden sollen, Standard ist -1, was alle bedeutet.
expand: Boolescher Wert, gibt einen Datenrahmen mit unterschiedlichen Werten in verschiedenen Spalten zurück Wenn wahr. Andernfalls wird eine Reihe mit einer Liste von Zeichenfolgen zurückgegeben.Rückgabetyp: Eine Reihe von Listen oder Datenrahmen, je nach Erweiterungsparameter
Zum Herunterladen verwendet CSV-Datei, klicken Sie hier.
In den folgenden Beispielen enthält der verwendete Datenrahmen Daten über einige NBA-Spieler. Ein Bild des Datenrahmens vor allen Operationen ist unten angehängt.
Beispiel Nr. 1 : Aufteilen einer Zeile von der rechten Seite in eine Liste
In diesem Beispiel wird die Zeile in der Team-Spalte jedes Mal geteilt, wenn "t" erscheint. Der Parameter n wird auf 1 gehalten, also ist die maximale Anzahl von Splits pro Zeile 1. Da rsplit() verwendet wird, wird die Zeile von der rechten Seite geteilt.
# Pandas-Modul importieren
import
Pandas als pd
# CSV-Datei von URL lesen
data
=
pd.read_csv (
" https://media.python.engineering/wp-content/uploads/ nba.csv "
)
# Nullspalten löschen, um Fehler zu vermeiden
data.dropna (inplace
=
True
)
# neuer Datenrahmen mit getrennten Spalten
Daten [
"Team"
]
=
data [
"Team"
] .
str
. rsplit (
"t"
, n
=
1
, expand
=
False
)
# Anzeige
Daten
Ausgabe:
Wie im Ausgabebild gezeigt, wurde die Linie durch "t" in "Celtics" und das "t" in "Boston" geteilt. Dies liegt daran, dass die Aufteilung in umgekehrter Reihenfolge erfolgte. Da der Erweiterungsparameter auf False gelassen wurde, wurde eine Liste zurückgegeben.
Beispiel Nr. 2 : Erstellen einzelner Spalten aus einer Zeile mit .rsplit ()
In diesem Beispiel wird die Name-Spalte durch ein Leerzeichen ("") getrennt und der Erweiterungsparameter auf True gesetzt, was bedeutet Es wird ein Datenrahmen zurückgegeben, in dem alle Zeilen in einer anderen Spalte getrennt sind ... Der Datenrahmen wird dann verwendet, um neue Spalten zu erstellen, und die alte Namensspalte wird mit der Methode .drop () gelöscht.
Das n Der Parameter wird auf 1 gehalten, da es auch Zweitnamen geben kann (mehr als ein Leerzeichen pro Zeile). In diesem Fall ist rsplit() nützlich, da es von der rechten Seite aus berechnet und daher die mittlere Namenszeile in die Namensspalte aufgenommen wird, da die maximale Anzahl von Splits bei 1 gehalten wird.
# pandas module import
import
pandas as pd
# CSV-Datei von URL lesen
data
=
pd.read_csv (
" https://media.python.engineering/wp-content/uploads /nba.csv "
)
# Löschen von Nullspalten oder Werten, um Fehler zu vermeiden
data.dropna (inplace
=
True
)
# neuer Datenrahmen mit getrennten Spalten
new
=
data [
"Name"
].
str
. split (
" "
, n
=
1
, expand
=
True
)
# eine separate Namensspalte aus einem neuen Datenrahmen erstellen
data [
"First Name"
]
=
new [
0
]
# Erstellen Sie eine separate Nachnamenspalte aus einem neuen Datenrahmen
data [
"Nachname"
]
=
neu [
1
]
# Alte Spalten entfernen Name
data.drop ( Spalten
=
[
"Name"
], ersetzen Sie
=
True
)
# df display
Daten
Ausgabe:
Wie im Ausgabebild gezeigt, wurden zwei neue Spalten erstellt und die alte Name-Spalte wurde entfernt.
Wir hoffen, dass dieser Artikel Ihnen geholfen hat, das Problem zu lösen. Sehen Sie sich neben Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit () auch andere Python functions-bezogene Themen an.
Möchten Sie sich in Python auszeichnen? Sehen Sie sich unseren Rückblick auf die besten Python-Online-Kurse 2023 an. Wenn Sie an Data Science interessiert sind, sehen Sie sich auch an, wie Sie Programmieren in R lernen.
Dieses Material ist übrigens auch in anderen Sprachen verfügbar:
- Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- Italiano Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- Deutsch Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- Français Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- Español Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- Türk Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- Русский Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- Português Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- Polski Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- Nederlandse Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- 中文 Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- 한국어 Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- 日本語 Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
- हिन्दी Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit ()
London | 2023-02-05
Danke für die Erklärungen! Ich steckte mit Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit () für einige Stunden, endlich habe ich es geschafft 🤗. Gestern überprüft, funktioniert!
Milan | 2023-02-05
Ich bereitete mich auf mein Programmierinterview vor, danke für die Klarstellung - Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit () in Python ist nicht das einfachste. Ich bin mir nur nicht ganz sicher, ob es die beste Methode ist
Berlin | 2023-02-05
Python functions ist alles ein bisschen verwirrend 😭 Pythonschlange | Pandas Umgekehrtes Aufteilen von Zeichenfolgen in zwei Listen / Spalten mit str.rsplit () ist nicht das einzige Problem, auf das ich gestoßen bin. Werde es in meiner Bachelorarbeit verwenden