Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Poda | Métodos de Cadena
Manipulación de Cadenas en Python

book
Poda

Como científicos de datos, podemos encontrarnos con algunos datos numéricos representados en formato de cadena. Por ejemplo, el año de nacimiento en formato 1991 año, o el peso en formato 142 libras, etc. Estas unidades imposibilitan la aplicación de funciones matemáticas (como la media).

Afortunadamente, Python puede resolver el problema. Existe un método incorporado .strip que devuelve una copia de la cadena eliminando tanto los caracteres iniciales como los finales. Si queremos eliminar elementos sólo del lado izquierdo, utilice .lstrip, y rstrip para los símbolos del lado derecho. Todas estas funciones eliminarán por defecto todos los caracteres de espacio posibles.

Si queremos eliminar determinados caracteres, podemos establecerlos como argumento en la función. Estos caracteres deben escribirse consecutivamente en una cadena. Por ejemplo,

print("148 lbs".strip(' lbs'))
print("AB string AB".lstrip('AB '))
12
print("148 lbs".strip(' lbs')) print("AB string AB".lstrip('AB '))
copy

Estos métodos funcionan de la siguiente manera: intentan encontrar al menos uno de los símbolos (especificados en el argumento) en el lado respectivo (izquierdo para .lstrip, derecho para .rstrip, y en ambos lados para .strip) y lo eliminan hasta que no se encuentre ningún símbolo.

Tarea

Swipe to start coding

Dada una lista de cadenas ages que contiene cadenas en formato ___ y/o. Es necesario iterar sobre la lista, eliminando las terminaciones ' y/o', convertir cada elemento a un tipo entero y calcular la media.

No te preocupes si no estás familiarizado con algunas partes del código.

Solución

# Loading library
import numpy as np
# List
ages = ['43 y/o', '24 y/o', '34 y/o', '23 y/o']
# Iterating over list
for i in range(len(ages)):
ages[i] = int(ages[i].strip(' y/o'))
print("Average age:", np.array(ages).mean())

Nota

Es imposible calcular la media para la lista original ya que sus elementos no pueden ser reconocidos como números.

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 3
# Loading library
import numpy as np
# List
ages = ['43 y/o', '24 y/o', '34 y/o', '23 y/o']
# Iterating over list
for i in range(len(ages)):
ages[i] = int(ages[i].___('___'))
print("Average age:", np.array(ages).mean())

Pregunte a AI

expand
ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

some-alt