Eu quero deixar todos os cabeçalhos de coluna no meu quadro de dados do pandas em letras minúsculas
Exemplo
Se eu tiver:
data =
country country isocode year XRAT tcgdp
0 Canada CAN 2001 1.54876 924909.44207
1 Canada CAN 2002 1.56932 957299.91586
2 Canada CAN 2003 1.40105 1016902.00180
....
Eu gostaria de mudar XRAT para xrat fazendo algo como:
data.headers.lowercase()
Para que eu receba:
country country isocode year xrat tcgdp
0 Canada CAN 2001 1.54876 924909.44207
1 Canada CAN 2002 1.56932 957299.91586
2 Canada CAN 2003 1.40105 1016902.00180
3 Canada CAN 2004 1.30102 1096000.35500
....
Não saberei os nomes de cada cabeçalho de coluna com antecedência.
df.columns = df.columns.str.lower()
Respostas:
Você pode fazer assim:
ou
exemplo:
fonte
[x.lower() for x in data.columns]
é equivalente a:[x.lower() for x in data]
[x.lower().strip() for x in df0]
MultiIndex
df.index.names = [x.lower().strip() for x in df.index.names]
Você poderia fazê-lo facilmente com
str.lower
paracolumns
:Exemplo:
fonte
Se você quiser fazer a renomeação usando uma chamada de método em cadeia, você pode usar
(Python 2)
ou
(Python 3)
fonte
Aqui está uma maneira simples:
data.columns = data.columns.str.lower()
fonte
é o mais fácil mas apresentará um erro se alguns cabeçalhos forem numéricos
se você tiver cabeçalhos numéricos, use isto:
fonte