DSSP bad lexical cast

Issue #644 resolved
Former user created an issue

Hello,

I was trying to obtain the SSE of my pdb, but the execution failed with the following error

 sse <- dssp(pdb2, verbose = TRUE)

 ..     1488 atom(s) from 'string' selection 
 ..     1488 atom(s) in final combined selection 


 ..     6149 atom(s) from 'string' selection 
 ..     6149 atom(s) in final combined selection 
 ..   127579 atom(s) in inversed selection 

Running command:
  dssp /tmp/RtmpNGAMkZ/file23603f5e7008 /tmp/RtmpNGAMkZ/file236013e8661d 
DSSP could not be created due to an error:
bad lexical cast: source type value could not be interpreted as target
Error in dssp.pdb(pdb2, verbose = TRUE) : 
  An error occurred while running command
 'dssp /tmp/RtmpNGAMkZ/file23603f5e7008 /tmp/RtmpNGAMkZ/file236013e8661d'
In addition: Warning message:
In dssp.pdb(pdb2, verbose = TRUE) :
  Non-protein residues detected in input PDB: CLA, SOD, CYP, POPC, TIP3

the files on the tmp are the pdb I'm using for the evaluations, and outside R the dssp generates the output without problems, but nevertheless I regenerated the pdb saving a new file using pymol.

I'm stuck and I hope you could help me

the system info is the following

R version 3.5.2 (2018-12-20)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Debian GNU/Linux 9 (stretch)

Matrix products: default
BLAS: /usr/local/lib/R/lib/libRblas.so
LAPACK: /usr/local/lib/R/lib/libRlapack.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8       
 [4] LC_COLLATE=en_US.UTF-8     LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                  LC_ADDRESS=C              
[10] LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] bio3d_2.3-4

loaded via a namespace (and not attached):
[1] compiler_3.5.2  parallel_3.5.2  tools_3.5.2     Rcpp_1.0.0      grid_3.5.2     
[6] lattice_0.20-38

Comments (5)

  1. Xinqiu Yao

    Hi,

    It seems you have water and ligands in the pdb file, which may break dssp. Delete those molecules using e.g. clean.pdb(rm.wat=TRUE, rm.lig=TRUE) will help solve the problem.

  2. Erwin Quiroga

    Hello, now it run the program 😄

    had as well fix the chains and aa... and trim the pdb before it worked fine, since I had a non-standard residue of palmitoyl cysteine.

    on a side note, I'm trying to plot the evolution of the SSE content along the MD frames, but can't figure out how to access the data hold in the output matrix of dssp.xyz(xyz[frames,], pdb). I was thinking in parse the sse result frame by frame to count the letters and then plot the percentage, but I couldn't figure out how to get a single frame output at a time

    Any suggestions???

  3. Xinqiu Yao

    The return value of dssp.xyz() is a list. You can access its components by using the dollar ($) sign. For example,

    sse <- dssp(xyz, pdb)
    sse$helix
    sse$helix$start
    sse$helix$end
    

    Hope it helps.

  4. Log in to comment