Hi, Fabio!
Here are the type combinations supported by blat from blat.c:
if (bothSimpleNuc || bothSimpleProt)
{
[...]
}
else if (tType == gftDnaX && qType == gftProt)
{
[...]
}
else if (tType == gftDnaX && (qType == gftDnaX || qType == gftRnaX))
{
[...]
}
else
{
errAbort("Unrecognized combination of target and query types\n");
What you would love to see and what is missing is this line:
else if (tType == gftProt && (qType == gftDnaX || qType == gftRnaX))
{
[...]
}
But this combination is not supported by BLAT.
Perhaps Jim Kent felt that BLAST already did this well enough
and did not choose to support this.
You could try converting your reads into 3 frames of protein
and then using blat -prot.
By the way, if you are specifying -out-blast8 then you wouldn't
typically give your output file name the extension .psl.
The results you got when using -prot on a dna query
are invalid. Do not use them.
-Galt
Fabio Gori wrote:
> Hi,
>
> Sice my reads are just 32bp long, I am trying to use blat instead of blastx
> to
> map them into proteins.
> I am trying to run
> blat nr.fa seqsaglobus.fa ris2.psl -t=prot -q=dnax -tileSize=8 -stepSize=3 -
> fine -repMatch=1000000 -out=blast8
>
> But I got the message:
> d and q must both be either protein or dna
>
> I tried with
> -t=prot -q=prot
> and I get some results, but it should not work because seqsaglobus.fa is made
> by nucleotides.
>
> Can you explain me what happens?
>
> Thank you,
>
> Fabio
>
_______________________________________________
Genome maillist - [email protected]
https://lists.soe.ucsc.edu/mailman/listinfo/genome