1
resposta

[Dúvida] Os valores da importacao estao vindo sem a quebra da virgula

Ola

estou tendo dificuldades para importar os dados no power bi com o script de dados em python. A informacao esta vindo, porem o power bi nao esta separando as casas decimais corretamente, alguem sabe como corrrigir? Teria que adicionar algo no código?

segue abaixo código das cotacoes. import yfinance as yf import pandas as pd

Definindo a carteira de ações

carteira_yf = ['ASAI3.SA', 'EQTL3.SA', 'LREN3.SA', 'PRIO3.SA', 'RAIL3.SA', 'RDOR3.SA', 'SBSP3.SA', 'VIVT3.SA']

Carregando os dados da carteira

df = yf.download(carteira_yf, start='2023-01-01', end='2023-12-31')

Passando os ativos para o multindex do df

cotacoes = df.stack(level=1)

Resetando os índices e renomenado a coluna dos ativos

cotacoes = cotacoes.reset_index().rename(columns={"level_1": "Ticker"})

Organizando o df

cotacoes = cotacoes[["Date", "Open", "High", "Low", "Close", "Ticker"]] cotacoes.rename(columns={'Ticker': 'Ativo'}, inplace=True)

Segue a imagem da importacao Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Ooi, Matheus! Como vai?

Aparentemente, o problema está relacionado ao formato dos números importados para o Power BI. Para resolver esse problema, você pode tentar ajustar o formato dos números diretamente no Power Query do Power BI.

Vou deixar abaixo os passos que você pode seguir:

1º) Abra o Power Query:

  • No Power BI, vá para a aba "Página Inicial" e clique em "Transformar dados" para abrir o Power Query.

2º) Selecione a Tabela:

  • Selecione a tabela cotacoes na lista de consultas à esquerda.

3º) Alterar Tipo de Dados:

  • Selecione as colunas numéricas (Open, High, Low, Close) que estão apresentando problemas.
  • Na aba "Transformar", clique em "Tipo de Dados" e selecione "Decimal Number" ou "Fixed Decimal Number" dependendo do formato desejado.

4º) Aplicar as Mudanças:

  • Após ajustar o tipo de dados, clique em "Fechar e Aplicar" para salvar as mudanças e retornar ao ambiente do Power BI.

Uma outra opção é fazer as alterações diretamente no script Python antes de importar os dados para o Power BI. Vou deixar abaixo um exemplo de como você pode ajustar o formato dos números no seu script:

import yfinance as yf
import pandas as pd

# Definindo a carteira de ações
carteira_yf = ['ASAI3.SA', 'EQTL3.SA', 'LREN3.SA', 'PRIO3.SA', 'RAIL3.SA', 'RDOR3.SA', 'SBSP3.SA', 'VIVT3.SA']

# Carregando os dados da carteira
df = yf.download(carteira_yf, start='2023-01-01', end='2023-12-31')

# Passando os ativos para o multindex do df
cotacoes = df.stack(level=1)

# Resetando os índices e renomeando a coluna dos ativos
cotacoes = cotacoes.reset_index().rename(columns={"level_1": "Ticker"})

# Organizando o df
cotacoes = cotacoes[["Date", "Open", "High", "Low", "Close", "Ticker"]]
cotacoes.rename(columns={'Ticker': 'Ativo'}, inplace=True)

# Ajustando o formato dos números
cotacoes['Open'] = cotacoes['Open'].map('{:.2f}'.format)
cotacoes['High'] = cotacoes['High'].map('{:.2f}'.format)
cotacoes['Low'] = cotacoes['Low'].map('{:.2f}'.format)
cotacoes['Close'] = cotacoes['Close'].map('{:.2f}'.format)

# Salvando o dataframe para importação no Power BI
cotacoes.to_csv('cotacoes_formatadas.csv', index=False)

Espero ter ajudado! Sucesso nos estudos!

Abraço!

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