não sei oq está acontecendo, alguem pode me ajudar? já tentei diversos códigos de outras pessoas e dá o mesmo erro mesmo com o código correto
não sei oq está acontecendo, alguem pode me ajudar? já tentei diversos códigos de outras pessoas e dá o mesmo erro mesmo com o código correto
Olá Vitório, tudo bem?
O problema está na forma como você está tentando acessar os dados do DataFrame. O erro Passing a dict as an indexer is not supported. Use a list instead.
significa Passar um dict como indexador não é suportado. Use uma lista em vez disso
. Ou seja, você está tentando acessar os dados da coluna usando um dicionário (vendas_2022)
, mas o df.loc[]
espera que o índice seja uma lista ou uma coluna válida.
Para pegar as vendas da loja 'A', basta usar df.loc['A']
. Isso retornará as vendas de 'A' para todos os meses. Use também o df.columns
para obter os nomes dos meses (que são os títulos das colunas do DataFrame).
Aqui está para a loja A:
# Plotar as vendas da loja 'A'
axs[0, 0].plot(df.columns, df.loc['A'], label='Loja A')
axs[0, 0].set_title('Vendas Loja A')
axs[0, 0].set_xlabel('Mês')
axs[0, 0].set_ylabel('Vendas')
axs[0, 0].legend()
Faça essa estrutura para as outras lojas. Reforço que você também poderá consultar o gabarito em "Ver Opinião do Instrutor".
Espero ter ajudado.
Qualquer dúvida, não hesite em compartilhar no fórum.
Abraços e bons estudos!