RMSD_ERROR

Issue #557 resolved
Mehdijoodaki created an issue

Hi

when i use rmsd command in bio3d for calculate structure similarity proteins there is a below error:

my code : rmsd(pdbs, fit=TRUE)

Error in fit.xyz(fixed = x, mobile = y, fixed.inds = 1:length(x)) : length of 'fixed.inds' != length of 'mobile.inds'

Comments (7)

  1. Xinqiu Yao

    Please provide more information about how you created the 'pdbs', along with information about your working environment (versions of bio3d and R, OS type, etc.). It is probably a very special case because the function has been tested many times without an error. It would be more helpful if you could provide an example that we can reproduce your errors.

  2. Mehdijoodaki reporter

    I use R version 3.4.3 (x64) , bio3d version 2.3-3.9000, and muscle v3.8.31 , I created the pdbs with code below: first i read pdb id (it is consist 20 id )

    idpdb=c (1A1M,1A6A,1A9W,1APY,1AU1,1AVO,1AX8,1AII,1B4R,1B6U,1BD2,1BEY,1BH8,1BH8,1BD8,1BJ4,1B8M,1BY2,1C25,1C98)

    raw.files <- get.pdb(idpdb)

    files <- pdbsplit(raw.files, idpdb)
    
      pdbs <- pdbaln(files, web.arg=list(email="abbaskhan@sjtu.edu.cn"))
    
      rmsd(pdbs, fit= TRUE)
    
      NOTE: when i reduce my ids it worked! for 10 id  it worked.
    

    my result is :

    Error in fit.xyz(fixed = x, mobile = y, fixed.inds = 1:length(x)) : length of 'fixed.inds' != length of 'mobile.inds' In addition: Warning message: In rmsd(pdbs, fit = TRUE) : No indices provided, using the 0 non NA positions

  3. Xinqiu Yao

    Hi,

    I've tested and got the same error. I found that the alignment is very bad, especially 1BD2_B and 1BD2_C do not have any aligned position! Make sure that the input is really what you want to compare, i.e. all sequences are homologous. If you compare two completely unrelated proteins, you might end up with the same error as we observed, which should never happen for homologs.

    I guess what you really want to compare are some chains from each pdb file (not all the chains ,which may contain substrates). The proper way is to do a blast-like search first and get sequences and pdbs based on the search results. (See bio3d PCA tutorial for examples).

  4. Mehdijoodaki reporter

    Hi

    Yes! i want to compare near 6000 3d proteins structure! I don't know how find ids same 1BD2_B then remove from my input? How you found 1BD2_B and 1BD2_C? I want to delete this files from my input!

    Thank for your help!

  5. Xinqiu Yao

    As I said, you need to do a similar search using e.g. blast.pdb() or hmmer(). See the tutorial or the bio3d paper (BMC Bioinformatics 2014) for examples.

  6. Log in to comment