arbeitet Ich habe einen folgenden Pandas Datenrahmen:Filtern von Zeilen von Pandas Datenrahmen nicht
In [23]: df
Out[23]:
names
0 Alabama[edit]
1 Auburn (Auburn University)[1]
2 Florence (University of North Alabama)
3 Jacksonville (Jacksonville State University)[2]
4 Livingston (University of West Alabama)[2]
5 Montevallo (University of Montevallo)[2]
6 Troy (Troy University)[2]
7 Tuscaloosa (University of Alabama, Stillman Co...
8 Tuskegee (Tuskegee University)[5]
9 Alaska[edit]
10 Fairbanks (University of Alaska Fairbanks)[2]
11 Arizona[edit]
12 Flagstaff (Northern Arizona University)[6]
13 Tempe (Arizona State University)
14 Tucson (University of Arizona)
Wie Sie sehen können, einige der Einträge in names
haben das Wort [edit]
in ihnen. Ich möchte nur diese Einträge filtern und daraus einen neuen Datenrahmen erstellen. Also habe ich versucht:
In [24]: df1 = df[df['names'].str.contains("[edit]")]
jedoch der neue Datenrahmen df1
mir nicht geben, was ich will und noch enthalten alle Einträge des ursprünglichen Datenrahmen:
In [25]: df1.head()
Out[25]:
names
0 Alabama[edit]
1 Auburn (Auburn University)[1]
2 Florence (University of North Alabama)
3 Jacksonville (Jacksonville State University)[2]
4 Livingston (University of West Alabama)[2]
Genau das, was ich bin fehle und wie kann ich es reparieren?
try this: ' "\ [Bearbeiten \]"' statt '" [Bearbeiten] "' - '" [edit] "' ist eine RegEx, die Ihnen alle Zeichenfolgen gibt, die eines dieser vier Zeichen enthalten: '['e', 'd', 'i', 't']' oder einfach 'regex = False verwenden 'Parameter – MaxU
MaxU-Lösung wird funktionieren. Sie können 'df [df ['names']. Str.endswith (" [edit] ")]' verwenden, um nach Endteilen der Zeichenfolge zu suchen. – Zero
Arbeitete! Ich werde immer noch mit Regex-Mustern verwirrt. – Peaceful