Jump to content
Fórum Script Brasil
  • 0
Sign in to follow this  
Gustavo Gavazzoni

Agrupar linhas similares

Question

Pessoal;

Tenho a seguinte situação, preciso agrupar as linhas de um texto por sua semelhança e separar em outro arquivo, um exemplo;

No arquivo Texto.txt

teste perl 01;
teste perl 02 sucesso total;
teste perl 01 failed;
novo arquivo;
novo arquivo testado;
novo arquivo testado com sucesso;

Separaria em dois arquivos; o único e o semelhante.

ArqUni.txt - a linha possui mais informação que as outras.

novo arquivo testado com sucesso;
teste perl 02 sucesso total;

ArqSemelhante.txt - as duas primeiras linhas linhas são parecidas com a linha que tem mais informações.

teste perl 01 failed;
teste perl 01;
novo arquivo testado;
novo arquivo;

Desde já agradeço que puder ajudar.

Att. Gustavo

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Prezados Consegui a solução;

segue o código;

#!/usr/bin/perl

use strict;
use Set::Similarity::Cosine;

my $cosine = Set::Similarity::Cosine->new;

open(DATA,"FILE.txt") or die " Arquivo ausente";
my @data;

while (<DATA>)
{
    push @data, { map { $_ => 1 } split };
}

for my $i ( 0 .. $#data-1 ) 
{
    for my $j ( $i + 1 .. $#data ) {
        my $similarity = $cosine->similarity($data[$i],$data[$j]);
           
           $similarity =~s/0\.([0-9]{2}).+/\1/i;
           if ($similarity > 90)
           {
            print "A linha $i Tem $similarity de similar com a linha $j\n";
            system "pause";
        }
    }
}

Agora estou tendo dificuldade em adicionar o resultado no inico da linha.

Agradeço quem puder ajudar.

 

Edited by Gustavo Gavazzoni

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

Cloud Computing


  • Forum Statistics

    • Total Topics
      148575
    • Total Posts
      644272
×
×
  • Create New...