1
resposta

Procurar palavras-chaves de uma tabela em um campo descritivo em outra tabela

Olá Pessoal!

Tudo bem? Espero sim.

Estou tentando encontrar uma solução no POWER BI para uma situação que estou enfrentando a alguns dias e não estou conseguindo.

Tenho uma tabela chamada "KEYWORD" que possui várias palavras-chaves (para um trabalho que estou fazendo) na coluna A e, outra tabela chamada "DADOS" que possui vários textos em um campo descritivo na coluna C (contendo textos aleatórios escritos por usuários) e uma coluna D chamada "Keyword_localizada" onde preciso informar qual a palavra-chave localizei (a primeira que a busca encontrar) - pesquisei várias formas de fazer esta busca de várias palavras de uma vez (da tabela "KEYWORD") num campo de texto da tabela ("DADOS"), mas nenhuma delas conseguiu atender minhas necessidade - usando o Excel eu conseguiria este resultado através da formula:

=SEERRO(PROC(2^15;LOCALIZAR(KEYWORD!$A$157:$A$10;'DADOS!A2);KEYWORD!$A$1:$A$157);"Nenhuma palavra localizada")

Se alguém tiver alguma sugestão de como posso resolver isto e puder me ajudar, eu agradeceria!!!

1 resposta

Olá Renato! Tudo bem contigo?

Entendo que você está enfrentando dificuldades para encontrar palavras-chave de uma tabela em um campo descritivo de outra tabela no Power BI. Posso te ajudar com isso!

Uma forma de resolver essa situação é utilizando a função LOOKUPVALUE do Power BI. Essa função permite procurar um valor em uma tabela e retornar um resultado correspondente de outra coluna. No seu caso, você pode utilizar essa função para procurar as palavras-chave da tabela "KEYWORD" no campo descritivo da tabela "DADOS".

Aqui está um exemplo de como você pode fazer isso:

Keyword_localizada =
LOOKUPVALUE(
    KEYWORD[A];
    KEYWORD[A];
    MINX(
        FILTER(
            KEYWORD;
            CONTAINSSTRING('DADOS'[C]; KEYWORD[A])
        );
        KEYWORD[A]
    )
)

Nesse exemplo, a função CONTAINSSTRING é utilizada para verificar se o campo descritivo da tabela "DADOS" contém a palavra-chave da tabela "KEYWORD". A função FILTER é utilizada para filtrar as palavras-chave que são encontradas nesse campo descritivo. E a função MINX é utilizada para retornar a primeira palavra-chave encontrada.

Lembre-se de substituir "KEYWORD[A]" pelo nome da coluna de palavras-chave da tabela "KEYWORD" e "'DADOS'[C]" pelo nome do campo descritivo da tabela "DADOS".

Espero que essa sugestão te ajude a resolver o seu problema! Se tiver alguma dúvida adicional, é só me dizer.

Espero ter ajudado, abraços e bons estudos!

Olá, Renato, tudo bem? Espero que esteja bem e que eu possa te ajudar com a questão que está enfrentando no POWER BI.

Pelo que entendi, você precisa procurar palavras-chaves da tabela "KEYWORD" em um campo descritivo da tabela "DADOS" no POWER BI. Para realizar essa busca, você pode utilizar a função "LOOKUPVALUE", que permite encontrar valores em outra tabela com base em critérios específicos.

Antes de prosseguir, é importante garantir que as tabelas estejam relacionadas, de modo que o POWER BI possa identificar corretamente a associação entre elas. Caso ainda não tenha feito isso, você pode criar uma relação entre as colunas que contêm as palavras-chaves em ambas as tabelas.

Agora, vamos criar uma coluna calculada na tabela "DADOS" que irá retornar a primeira palavra-chave localizada para cada texto do campo descritivo. Para fazer isso, siga os passos abaixo:

  1. Abra o POWER BI e vá para o Editor de Consultas.

  2. Verifique se as tabelas "KEYWORD" e "DADOS" estão carregadas no Editor de Consultas.

  3. Clique na tabela "DADOS" e selecione a opção "Coluna Adicionar", no menu "Colunas".

  4. Na fórmula da coluna calculada, utilize a função "LOOKUPVALUE" para buscar a palavra-chave correspondente na tabela "KEYWORD" com base no texto da coluna C da tabela "DADOS". A fórmula ficará assim:

Keyword_localizada = 
VAR TextoBusca = 'DADOS'[Coluna C]
RETURN
LOOKUPVALUE(KEYWORD[Coluna A], KEYWORD[Coluna A], CONTAINSSTRING(TextoBusca, KEYWORD[Coluna A]))
  1. Essa fórmula irá verificar se cada palavra-chave da tabela "KEYWORD" está contida no campo de texto da coluna C da tabela "DADOS". Caso encontre uma correspondência, será retornada a primeira palavra-chave encontrada; caso contrário, será retornado "BLANK".

  2. Se necessário, formate a coluna "Keyword_localizada" para exibir "Nenhuma palavra localizada" quando não houver correspondências:

Keyword_localizada = 
VAR TextoBusca = 'DADOS'[Coluna C]
VAR PalavraChave = LOOKUPVALUE(KEYWORD[Coluna A], KEYWORD[Coluna A], CONTAINSSTRING(TextoBusca, KEYWORD[Coluna A]))
RETURN
IF(ISBLANK(PalavraChave), "Nenhuma palavra localizada", PalavraChave)
  1. Clique em "Fechar e Aplicar" para aplicar as alterações e voltar à visualização.

Agora, a coluna "Keyword_localizada" na tabela "DADOS" deverá conter a primeira palavra-chave encontrada em cada texto do campo descritivo. Caso não seja encontrada nenhuma correspondência, a coluna exibirá "Nenhuma palavra localizada".

Essa abordagem deve atender à sua necessidade de procurar várias palavras de uma vez na tabela "KEYWORD" em um campo de texto da tabela "DADOS". O uso da função "LOOKUPVALUE" com a função "CONTAINSSTRING" permite realizar a busca de forma eficiente e precisa.

Espero que esta resposta tenha sido útil para você! Se tiver mais dúvidas ou precisar de ajuda adicional, não hesite em perguntar. Bons estudos e sucesso em seu trabalho com o POWER BI!

Espero que tenha te ajudado, bons estudos!