Boa noite Italo! Tudo bem com você?
Ótima pergunta. O método .tolist()
é utilizado para converter índices ou valores de uma Series
em uma lista. Isso foi útil porque, ao criar um dicionário para construir um DataFrame, o pandas espera que os valores associados a cada chave sejam iteráveis compatíveis, como listas. No caso do código abaixo:
brasil_dict = {'ano': brasil.index.tolist(), 'imigrantes': brasil.values.tolist()}
Temos que:
brasil.index.tolist()
: Converte os índices da Series
brasil em uma lista, garantindo que possam ser utilizados corretamente no dicionário.brasil.values.tolist()
: Converte os valores da Series
em uma lista, tornando-os compatíveis com o formato do dicionário.
Se não utilizássemos .tolist()
, os elementos ainda poderiam ser manipuláveis, mas manteriam a estrutura de um Index
ou ndarray
, o que poderia gerar incompatibilidades em algumas operações futuras, como ao tentar percorrer os dados por meio de um loop
ou realizar outras transformações que requerem listas.
print(type(brasil_dict['ano'])) # <class 'pandas.core.indexes.base.Index'>
print(type(brasil_dict['imigrantes'])) # <class 'numpy.ndarray'>
Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado