Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich effizient Strings finden, die bestimmte Teilstrings in einer Pandas-Serie enthalten?

Wie kann ich effizient Strings finden, die bestimmte Teilstrings in einer Pandas-Serie enthalten?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-06 11:39:121017Durchsuche

How Can I Efficiently Find Strings Containing Specific Substrings in a Pandas Series?

Testen von String-Teilstrings in Pandas

In Pandas kann es vorkommen, dass Sie feststellen müssen, ob eine String-Spalte einen von mehreren Teilstrings enthält . Dies kann mit den Funktionen isin() und str.contains() erreicht werden, es ist jedoch ein effizienterer Ansatz verfügbar.

Um alle Zeichenfolgen zu finden, die eine Liste von Teilzeichenfolgen enthalten, können Sie die Pipe für reguläre Ausdrücke verwenden Zeichen (|) in str.contains(). Wenn beispielsweise eine Reihe s = ['cat','hat','dog','fog','pet'] und die gewünschten Teilzeichenfolgen ['og', 'at'] gegeben sind, können Sie den folgenden Code ausführen:

import pandas as pd

searchfor = ['og', 'at']
result = s[s.str.contains('|'.join(searchfor))]

Dieser Vorgang erstellt eine Reihe mit allen Elementen von s, die mit einem der Teilstrings in searchfor übereinstimmen, mit Ausnahme von pet.

Es ist wichtig, dieses Besondere zu beachten Zeichen mit bestimmten Bedeutungen in regulären Ausdrücken, wie z. B. $ und ^, sollten mit re.escape() maskiert werden. Dadurch wird sichergestellt, dass sie beim Abgleich als Literalzeichen behandelt werden.

Das obige ist der detaillierte Inhalt vonWie kann ich effizient Strings finden, die bestimmte Teilstrings in einer Pandas-Serie enthalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn