Pular para o conteúdo principal

Power BI - NÃO EDITE seus Modelos do Power BI na Nuvem.

[Power BI] Transformando Latitude e Longitude de Graus para Decimal




Olá amiguinhos que adoram mapas nos seus paineis tudo bem?

Hoje bate papo rapidão sobre uma dúvida de uma colega no nosso grupo do telegram, e se você não está nele pode ir agora tirar duvida com um grupo de quase 1700 pessoas e super ativo.

https://t.me/planilheiros

Bem, a dúvida dela era bem simples e já tinha visto outra vez alguém perguntando em outro grupo mas estava na correria e não pude ajudar, isso acontece infelizmente bastante. Ela tem dados de latitude e longitude em Grau e gostaria de passar isso para DECIMAL para poder utilizar nos visuais de Mapa do Power BI.

A dúvida é bem legal e precisa entender um pouco a lógica matemática de transformar Grau para Decimal e ela é bem simples.

Quando um dado em Grau, temos 3 informações:

- Grau
- Minutos
- Segundos.

Grau é o valor inteiro e ele por si só já me da o dado do meu inteiro do Decimal.

Minuto é isso mesmo Minuto, para eu chegar num valor decimal de minutos eu preciso dividir ele por 60.

Segundo segue a mesma lógica, vamos dividi-lo então por 3600.

Sendo assim basta criar uma função personalizada que nos diga exatamente isso, pegue graus, separe o inteiro (Grau)  Number.From(Text.BeforeDelimiter(Fonte, "º")), pegue a parte de minutos divida por 60 Number.From(Text.BetweenDelimiters(Fonte, "º", "'"))/60, pegue segundos divida por 3600 Number.From(Text.BetweenDelimiters(Fonte, "'", """"))/3600 e depois só somar esses carinhas todos.

E voilè temos nossa função personalizada para usar bonitão só copiar e colar no editor avançado em uma consulta nula.

(graus as text)=>
let
    Fonte = graus,
    Graus = Number.From(Text.BeforeDelimiter(Fonte, "º")),
    Minutos = Number.From(Text.BetweenDelimiters(Fonte, "º", "'"))/60,
    Segundos = Number.From(Text.BetweenDelimiters(Fonte, "'", """"))/3600,
    Final = Graus + Minutos + Segundos
in
    Final

E por hoje é só pessoal.

Grande abraço.

Comentários

  1. Muito massa . Gostei. Rafael, uma sugestão: quando puder, faz um vídeo de como inserir um arquivo kml no Power bi. Seria ótimo...

    ResponderExcluir
    Respostas
    1. Boa... eu tenho um material pra usar o KML, geojson e etc... to tratando isso pra poder disponibilizar...ta faltando tempo e coragem de voltar nesse negócio rs...

      Excluir
  2. Este comentário foi removido pelo autor.

    ResponderExcluir
  3. Uma dúvida, cálculos não é melhor realizar no dax?

    ResponderExcluir
    Respostas
    1. Sem duvida...a questão que para esse caso geralmente utiliza-se esse dado como eixo de visual então precisa criar uma nova coluna. Nesse caso a melhor abordagem é função personalizada no Power Query.

      Excluir
  4. Parabéns pelo artigo.. a tempo estava procurando esse tipo de trabalho

    ResponderExcluir
  5. Me ajudou demais!
    Complementei a função para que transforme em + ou - conforme as Coordenadas. A minha base de dados está com o formato 19°33'38"S

    (graus as text)=>
    let
    Fonte = graus,
    Graus = Number.From(Text.BeforeDelimiter(Fonte, "°")),
    Minutos = Number.From(Text.BetweenDelimiters(Fonte, "°", "'"))/60,
    Segundos = Number.From(Text.BetweenDelimiters(Fonte, "'", """" ))/3600,
    Coordenada = Text.End(Fonte, 1),
    Final = if Coordenada="S" or Coordenada="W" or Coordenada="O" then -(Graus + Minutos + Segundos) else Graus + Minutos + Segundos
    in
    Final

    Espero que ajude mais alguém!

    ResponderExcluir

Postar um comentário

Postagens mais visitadas deste blog

[Power BI] O totalizador da minha Tabela ou Matriz "NÃO BATE" e agora?

Olá amantes de visuais de tabela e matriz no Power BI, tudo bem? Hoje vamos falar de um caso que vejo bastante nos grupos do Power BI. “O calculo na linha está batendo mas no total não e agora?” Mas antes de iniciarmos, que tal deixar aquela sua inscrição marota no meu canal no youtube que está recheado de vídeos legais, vai lá seu pão duro de like youtube.com/rafaelmendonca Agora que você já aliviou sua pão-durice você merece conteúdo .... kkkkkkkk Vamos lá, temos então a seguinte tabela gerada no meu conjunto de dados Essa tabela possui uma lista de vendas realizadas por dois vendedores com o numero da ordem da venda, um valor unitário e uma quantidade de itens em cada venda. O que queremos é bem simples meu jovem, calcular o valor total de cada venda e ter um total de todas as vendas... Aí você muito garotão usa a seguinte expressão DAX: E depois joga isso numa tabela. Lindo neh??? Mas o totalizador trouxe um valor que não tem

[Power BI] Você está com erro nas suas funções DAX que até ontem funcionavam?

Hoje você acordou abriu seu Power BI tentou criar uma nova medida e está dando um erro chato como esse abaixo A sintaxe de ";" está incorreta ou até mesmo o Muitos argumentos foram passados para a função Bem não precisa se preocupar porque você não desaprendeu Power BI, a sintaxe deve estar correta, mas correta para o Padrão que usamos aqui no Brasil com o ; (ponto e virgula) como separador de lista e a ,  (vírgula) como separador de decimal. Na versão de Maio de 2020 o Power BI Desktop jogou como padrão para todos não mais o padrão regional da sua máquina mas o padrão internacional do DAX usando , (vírgula) como separador de lista e . (ponto) como separador de decimal. Sendo assim se você quiser continuar usando o padrão da máquina tem que alterar a opção indo em Arquivo Opções e Configurações e depois Opções Na caixinha que é aberta vá em Configurações Regionais na área Global E altere a opção que está  Recomendado  para  Usar separador do DAX Localizado Vai ser solicita

5 coisas no Power Query que talvez nunca tenham te explicado ou mostrado.

5 coisas no Power Query que talvez nunca tenham te explicado ou mostrado. O Power Query   é o editor de consultas utilizado tanto no PowerBI   quanto no Excel (em algumas versões) e que tem enorme poder de transformação dos dados importados de fontes diversas, sejam elas estruturadas ou não. Usuários menos experientes utilizam o  Power Query  apenas com cliques nos elementos do MENU, o que sim pode ajudar bastante, mas entender as funções e detalhes que estão por trás desses cliques podem enriquecer o seu  ETL , resolver problemas que nunca seriam feitos com o simples uso dos botões e te ajudarão numa certificação Microsoft. 1 - Sabendo o que está acontecendo: Uma das coisas principais e essenciais no uso do  Power Query  é que, mesmo utilizando os botões no Menu, você consegue identificar que funções estão sendo utilizadas. Vou mostrar isso de duas formas: Barra de Formulas - Dessa forma você pode acompanhar na barra de formulas