1
resposta

TypeError: 'set' type is unordered

Boa noite,

Ao executar esse código:


import pandas as pd

carros = {'Jetta Variant','Passat','Crossfox'}

print(pd.Series(carros))

eu recebo este retorno:

Traceback (most recent call last):
  File "C:\Users\Paulo\PycharmProjects\DataScience_Alura\pandas_1.py", line 5, in <module>
    print(pd.Series(carros))
  File "C:\Users\Paulo\PycharmProjects\DataScience_Alura\venv\lib\site-packages\pandas\core\series.py", line 451, in __init__
    data = sanitize_array(data, index, dtype, copy)
  File "C:\Users\Paulo\PycharmProjects\DataScience_Alura\venv\lib\site-packages\pandas\core\construction.py", line 581, in sanitize_array
    raise TypeError(f"'{type(data).__name__}' type is unordered")
TypeError: 'set' type is unordered

Alguém pode me ajudar?

1 resposta

Olá, Paulo, tudo bem?

Esse erro está ocorrendo porque estamos criando a variável carros como um dicionário (utilizando { } ) ao invés de uma lista (utilizando [ ]).

Mas por que mesmo se eu quisesse passar como um dicionário não estaria funcionando?

Simplesmente porque um dicionário precisa de uma chave e um valor para aquela chave, e da forma que você escreveu o código é como se criássemos as chaves do nosso dicionário, mas sem qualquer valor passado a elas.

Para solucionar o nosso problema, poderemos modificar o noso código da seguinte forma:

import pandas as pd

carros = ['Jetta Variant','Passat','Crossfox']
pd.Series(carros)

ou

import pandas as pd

carros = {'Jetta Variant': valor_1,'Passat': valor_2,'Crossfox': valor_3}
pd.Series(carros)

Espero ter ajudado e qualquer dúvida é só chamar!

Forte abraço!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.Bons Estudos!