Script frequencia de palavras [RESOLVIDO]

1. Script frequencia de palavras [RESOLVIDO]

Cristiane Nonato da Silva
crisnnt

(usa Ubuntu)

Enviado em 19/02/2019 - 21:05h

Olá, preciso de uma ajuda quanto a um arquivo. Eu tenho um arquivo em html e precisava de uma lista com todas as palavras e a frequência em que cada uma aparece por ordem alfabética". Alguém pode me ajudar com esse script?




  


2. MELHOR RESPOSTA

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 19/02/2019 - 23:47h


Boa noite Cris, com base no exemplo postado, montei a seguinte REGEX:
([A-X0-9*-]{11})
A mesma será válida se as "palavras" SEMPRE tiverem o mesmo número de caracteres (11), se forem de tamanho variado, é só alterar o valor entre as "{ }"
grep -Eo '([A-X0-9*-]{11})' texto.txt
Saída:
GKV3-11*01
IGKV3-20*01
IGKV3-20*02
IGHV3-64D*0
IGHV3-66*01
IGHV3-66*04
IGHV4-31*01
IGHV4-28*01
IGHV4-28*02

Uma outra opção e "casar" o texto do link, exemplo:
echo "<a href="https://www.vivaolinux.com.br/html/">10 O Melhor site sobre o LINUX 10</a>"|grep -Eo '(>.*</a>)'|sed 's/>\|<\/a>//g'
10 O Melhor site sobre o LINUX 10

Caso não resolva, poste o arquivo htm . . .
Att.:
Marcelo Oliver



3. Re: Script frequencia de palavras [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 19/02/2019 - 22:06h


crisnnt escreveu:

Olá, preciso de uma ajuda quanto a um arquivo. Eu tenho um arquivo em html e precisava de uma lista com todas as palavras e a frequência em que cada uma aparece por ordem alfabética". Alguém pode me ajudar com esse script?

Boa noite,
Segue sugestão:
grep -E -owi '([a-z]{2,})' arquivo.html|sort|uniq -c|sed 's/^[ ]\+//;s/ /\t/' 

grep -E -owi '([a-z]{2,})' arquivo.html #"Casa" palavra com no minimo dois caracteres.
sort -f #Ordena em ordem alfabética
uniq -i -c #Conta
sed 's/^[ ]\+//;s/ /\t\t/' # Tira os espaços iniciais e troca " "(espaço)" por tabulação.

Att.:
Marcelo Oliver


4. Re: Script frequencia de palavras [RESOLVIDO]

Cristiane Nonato da Silva
crisnnt

(usa Ubuntu)

Enviado em 19/02/2019 - 22:59h

Oi Marcelo seu comando me ajudou mas só em parte, porque não expliquei direito mas meu arquivo não tem só palavras, na verdade tem números entre as palavras e são exatamente essas que eu preciso separar e numerar. É um arquivo muito grande e tem centenas de variáveis então é inviável procurar uma por uma. Segue a abaixo uma parte do arquivo para vc ver, o que eu preciso mesmo é do que está em negrito. (Essa parte em negrito é um hiperlink no arquivo original)

IGKV3-11*01germline gene 53.3 2e-1k0
IGKV3-20*01germline gene t 53.3 2e-10
IGKV3-20*02germline gene 53.3 2e-10

Query= transcr_410

IGHV3-64D*06germline gene 56.4 2e-11
IGHV3-66*01germline gene 56.4 2e-11
IGHV3-66*04germline gene 56.4 2e-11


Query= transcr_411

IGHV4-31*01germline gene 53.3 2e-10
IGHV4-28*01germline gene 50.1 2e-09
IGHV4-28*02germline gene 50.1 2e-09





5. Re: Script frequencia de palavras [RESOLVIDO]

Cristiane Nonato da Silva
crisnnt

(usa Ubuntu)

Enviado em 20/02/2019 - 00:09h

Obrigada Marcelo! Me ajudou bastante!
Boa noite!


6. Re: Script frequencia de palavras [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 20/02/2019 - 00:42h


crisnnt escreveu:

Obrigada Marcelo! Me ajudou bastante!
Boa noite!

Por nada, precisando, é só "gritar" . . .:)
Se o problema foi resolvido, marque o tópico como RESOLVIDO, e se não for pedir muito...
Escolha a minha resposta como a melhor.... Assim ganho uns pontinhos.... o que incentiva a continuar colaborando.

Boa noite e até +







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts