Tengo una columna en un dataframe de pandas que es todo mayúsculas. Me gustaría cambiar esto a palabras con solo la primera letra en mayúscula.
He probado lo siguiente:
import pandas as pd data = pd.read_csv('my_file.csv') data['field'] = data['field'].title()
Esto devuelve el error:
'Series' object has no attribute 'title'
¿Hay una forma sencilla de realizar operaciones de cadena como esta en una columna de pandas?
Encontré la respuesta aquí:
http://pandas.pydata.org/pandas-docs/stable/text.html
data['field'] = data['field'].str.title()
Una solución alternativa utilizando una lista de comprensión:
data['field'] = [word.title() for word in data['field']
Tiempos
df = pd.DataFrame({'field': ['abc', 'def', 'ghi'] * 100000}) %timeit df['field'].str.title() 10 loops, best of 3: 89.3 ms per loop %timeit [word.title() for word in df['field']] 10 loops, best of 3: 52.6 ms per loop