Pular para o conteúdo

Gostaria de criar um shell script que coletassem dados de pockets de cada Proteína

Responder tópico
  • Denunciar
  • Indicar

1. Gostaria de criar um shell script que coletassem dados de pockets de cada Proteína

Enviado em 22/09/2015 - 13:28h

Olá. Gostaria de coletar as 6 primeiras linhas do pocket que tem maior druggability score. Nessa imagem por exemplo, o maior druggability score é do pocket 2.
Obs¹: Esses dados estão num arquivo txt.
Pocket 1 :
Score : 34.202
Druggability Score : 0.215
Number of Alpha Spheres : 263
Total SASA : 848.733
Polar SASA : 391.042
Apolar SASA : 457.691
Volume : 1891.178
Mean local hydrophobic density : 40.521
Mean alpha sphere radius : 3.770
Mean alp. sph. solvent access : 0.498
Apolar alpha sphere proportion : 0.452
Hydrophobicity score: 26.735
Volume score: 3.853
Polarity score: 16
Charge score : -4
Proportion of polar atoms: 34.959
Alpha sphere density : 9.273
Cent. of mass - Alpha Sphere max dist: 22.336
Flexibility : 0.559

Pocket 2 :
Score : 29.205
Druggability Score : 0.853
Number of Alpha Spheres : 190
Total SASA : 463.952
Polar SASA : 163.194
Apolar SASA : 300.759
Volume : 921.783
Mean local hydrophobic density : 63.504
Mean alpha sphere radius : 3.697
Mean alp. sph. solvent access : 0.466
Apolar alpha sphere proportion : 0.595
Hydrophobicity score: 38.690
Volume score: 4.483
Polarity score: 15
Charge score : 3
Proportion of polar atoms: 32.584
Alpha sphere density : 8.886
Cent. of mass - Alpha Sphere max dist: 21.085
Flexibility : 0.371

Pocket 3 :
Score : 3.370
Druggability Score : 0.018
Number of Alpha Spheres : 47
Total SASA : 236.333
Polar SASA : 95.041
Apolar SASA : 141.292
Volume : 414.961
Mean local hydrophobic density : 22.000
Mean alpha sphere radius : 3.890
Mean alp. sph. solvent access : 0.614
Apolar alpha sphere proportion : 0.489
Hydrophobicity score: 27.375
Volume score: 4.000
Polarity score: 4
Charge score : -1
Proportion of polar atoms: 44.828
Alpha sphere density : 3.832
Cent. of mass - Alpha Sphere max dist: 9.680
Flexibility : 0.285

Pocket 4 :
Score : 2.099
Druggability Score : 0.024
Number of Alpha Spheres : 37
Total SASA : 126.614
Polar SASA : 73.479
Apolar SASA : 53.136
Volume : 371.931
Mean local hydrophobic density : 4.571
Mean alpha sphere radius : 3.431
Mean alp. sph. solvent access : 0.452
Apolar alpha sphere proportion : 0.189
Hydrophobicity score: 34.250
Volume score: 5.000
Polarity score: 5
Charge score : -2
Proportion of polar atoms: 44.828
Alpha sphere density : 3.494
Cent. of mass - Alpha Sphere max dist: 9.093
Flexibility : 0.452


Responder tópico

2. Re: Gostaria de criar um shell script que coletassem dados de pockets de cada Proteína

Enviado em 22/09/2015 - 14:31h

Olá,

Nào entendi, os dados que vc informou não tem 6 colunas... Não seria linhas??

abs
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---

3. Re: Gostaria de criar um shell script que coletassem dados de pockets de cada Proteína

Enviado em 22/09/2015 - 14:52h

Sorry. Nesse caso seriam as 6 primeiras linhas.

4. Re: Gostaria de criar um shell script que coletassem dados de pockets de cada Proteína

Enviado em 22/09/2015 - 17:55h

kk, Agora faz sentido...rs

Vamos lá

1) Crie o script (vc pode dar o nome que vc quiser, mais aqui vamos chamá-lo de prot.sh:
nano prot.sh 
2) Copie e cole o conteúdo abaixo, salve com CTRL O, ENTER depois saia com CTRL X
#!/bin/bash

# Script criado para resolver um problema do usuário @matbnas do VOL.
# Lê o arquivo (informado via parametro), identifica qual "pocket" (grupo)
# tem o maior score e o exibe na tela.
#
# Uso:
# ./prot.sh arquivo.txt

# Identifica e armazena druggabilty score no vetor druggs
druggs=$(grep 'Drugg' $1)

#inicializa variável de comparação
MAIOR_SCORE=0

# Para cada druggabilty armazenado no vetor druggs, filtra os numeros,
# compara com o $MAIOR_SCORE, se for maior, ele assume o valor e define
# a variavél drugg_maior com o vetor em questão.
for i in ${druggs[*]}
do
score=$(echo $i | sed s/[^0-9\.]//g)
if [[ $score > $MAIOR_SCORE ]]
then
MAIOR_SCORE="$score"
drugg_maior="$i"
fi
done

# filtra o arquivo pelo maior druggability score exibindo 2 linhas
# acima e 6 abaixo
grep -A 6 -B 2 "$drugg_maior" $1
3) Dê permissão de execução ao script:
chmod +x prot.sh 
4) execute o script passando o arquivo que contem os dados como parâmetro. Por exemplo:
./prot.sh arquivo.txt 
Acho que é isso.

Espero que ajude

abs,


---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder