Ich arbeite derzeit an einem Projekt für die Schule und ich versuche, mein Skript wo immer möglich wiederverwendbar zu machen.Anwenden einer Zeichenfolgenoperation auf eine Spalte in einem Python-Dataframe
Ich versuche, Sonderzeichen in allen String/Objekt-Spalten in meinem DataFrame zu entfernen/ersetzen. Derzeit tue ich dies, indem ich den Spaltennamen einer Funktion zur Verfügung stelle, die die Sonderzeichen entfernt und die Spalte an den DataFrame zurückgibt.
def removeSpecialChar(colName):
colName = colName.str.replace(r"[^A-Za-z ]+", ' ')
colName = colName.str.strip()
return colName
dann den Aufruf der Funktion:
data.Area_unit_2013_label = removeSpecialChar(data.Area_unit_2013_label)
das obige Beispiel mir erfordert die Spaltennamen angeben, um die Funktion zu übergeben die Sonderzeichen zu entfernen. Gibt es eine Möglichkeit, die Sonderzeichen aus allen String/Objekt-Spalten zu entfernen, ohne den Spaltennamen eingeben zu müssen?
Ich habe versucht:
import pandas as pd
data = pd.read_csv("File_name.csv")
data1 = pd.DataFrame(data.select_dtypes(include=['object'])) # here I
identify the columns currently stored as strings/objects
data1 = data1.replace("-", " ") # does not work
Ich habe auch versucht, die folgenden:
data1 = pd.DataFrame(data.select_dtypes(include=['object']))
for columns in data1:
columns.replace("-", " ")
Anregungen oder Feedback?
Dank für die Antwort danken, aber leider, dass nur die Sonderzeichen in den Spaltennamen ersetzt und nicht alle gesamte Spalte. – notAprogrammer
das hat hervorragend funktioniert. Vielen Dank für Ihre Hilfe, ich verbrachte Stunden damit, es herauszufinden. – notAprogrammer