Encuentra cuerdas en pandas

Encuentra cuerdas en pandas

Este artículo lo ayudará a comprender varios métodos que podemos usar para buscar una cadena en un marco de datos PANDAS.

Pandas contiene método

Pandas nos proporciona una función Contiene () que permite buscar si una subcadena está contenida en una serie Pandas o DataFrame.

La función acepta una cadena literal o un patrón de expresión regular que luego coincide con los datos existentes.

La sintaxis de la función es como se muestra:

Serie.stri.contiene (patrón, case = true, flags = 0, na = none, regex = true)

Los parámetros de la función se expresan como se muestra:

  1. patrón - se refiere a la secuencia de caracteres o al patrón regex para buscar.
  2. caso - Especifica si la función debe obedecer la sensibilidad del caso.
  3. banderas - Especifica que los indicadores pasen al módulo regex.
  4. n / A - llena los valores faltantes.
  5. regular - Si es cierto, trata el patrón de entrada como una expresión regular.

Valor de retorno

La función devuelve una serie o índice de valores booleanos que indican si el patrón/subcadena se encuentra en el marco de datos o la serie.

Ejemplo

Supongamos que tenemos una muestra de datos de muestra que se muestra a continuación:

# Pandas de importación
importar pandas como PD
DF = PD.DataFrame ("Full_names": ['Irene Coleman', 'Maggie Hoffman', 'Lisa Crawford', 'Willow Dennis', 'Emmett Shelton'])
df

Buscar una cadena

Para buscar una cadena, podemos pasar la subcadena como el parámetro del patrón como se muestra:

Imprimir (DF.nombres completos.stri.contiene ('shelton'))

El código anterior verifica si la cadena 'Shelton' está contenida en las columnas Full_Names de DataFrame.

Esto debería devolver una serie de valores booleanos que indican si la cadena se encuentra en cada fila de la columna especificada.

Un ejemplo es como se muestra:

Para obtener el valor real, puede aprobar el resultado del método Contiene () como el índice del marco de datos.

Imprimir (DF [DF.nombres completos.stri.contiene ('shelton')])

Lo anterior debería regresar:

nombres completos
4 Emmett Shelton

Búsqueda sensible a mayúsculas

Si la sensibilidad al caso es importante en su búsqueda, puede establecer el parámetro de caso en True como se muestra:

Imprimir (DF.nombres completos.stri.contiene ('shelton', case = true))

En el ejemplo anterior, establecemos el parámetro de caso en verdadero, permitiendo una búsqueda sensible a la caja.

Dado que buscamos la cadena en minúscula 'Shelton', la función debe ignorar la coincidencia de mayúsculas y devolver falso.

Búsqueda regular

También podemos buscar usando un patrón de expresión regular. Un ejemplo simple es como se muestra:

Imprimir (DF.nombres completos.stri.contiene ('wi | em', case = false, regex = true))

Buscamos cualquier cadena que coincida con los patrones 'wi' o 'em' en el código anterior. Tenga en cuenta que establecemos el parámetro de caso en falso, ignorando la sensibilidad del caso.

El código anterior debería devolver:

Clausura

Este artículo cubrió cómo buscar una subcadena en un marco de datos PANDAS usando el método Contins (). Consulte los documentos para más.