Questo articolo ti aiuterà a comprendere vari metodi che possiamo utilizzare per cercare una stringa in un frame dati Panda.
Panda contiene metodo
I panda ci forniscono una funzione contiene () che consente la ricerca se una sottostringa è contenuta in una serie Panda o da dati.
La funzione accetta una stringa letterale o un modello di espressione regolare che viene quindi abbinato ai dati esistenti.
La sintassi della funzione è come mostrata:
Serie.str.contiene (pattern, case = true, flags = 0, na = nessuno, regex = true)I parametri della funzione sono espressi come mostrato:
Valore di ritorno
La funzione restituisce una serie o un indice di valori booleani che indicano se il modello/sottostringa si trova nel frame dati o nella serie.
Esempio
Supponiamo di avere un frame di dati di esempio mostrato di seguito:
# Importa pandaCerca una stringa
Per cercare una stringa, possiamo passare la sottostringa come parametro pattern come mostrato:
Stampa (df.full_names.str.contiene ('Shelton'))Il codice sopra controlla se la stringa "Shelton" è contenuta nelle colonne Full_Names del Frame dati.
Questo dovrebbe restituire una serie di valori booleani che indicano se la stringa si trova in ogni riga della colonna specificata.
Un esempio è come mostrato:
Per ottenere il valore effettivo, è possibile superare il risultato del metodo contiene () come indice del frame dati.
Stampa (DF [DF.full_names.str.contiene ('shelton')])Quanto sopra dovrebbe tornare:
full_namesRicerca sensibile al caso
Se la sensibilità del caso è importante nella ricerca, è possibile impostare il parametro del caso su True come mostrato:
Stampa (df.full_names.str.contiene ('shelton', case = true))Nell'esempio sopra, impostiamo il parametro del caso su True, abilitando una ricerca sensibile al caso.
Dal momento che cerchiamo la stringa minuscola "Shelton", la funzione dovrebbe ignorare la partita maiuscola e restituire False.
Ricerca regex
Possiamo anche cercare usando un modello di espressione regolare. Un semplice esempio è come mostrato:
Stampa (df.full_names.str.contiene ('wi | em', case = false, regex = true))Cerchiamo qualsiasi stringa corrispondente ai modelli "wi" o "em" nel codice sopra. Si noti che impostiamo il parametro del caso su False, ignorando la sensibilità del caso.
Il codice sopra dovrebbe restituire:
Chiusura
Questo articolo ha trattato come cercare una sottostringa in un telaio di dati Pandas utilizzando il metodo (). Controlla i documenti per ulteriori informazioni.