maximilianh / crisporWebsite

All source code of the crispor.org website
http://crispor.org
Other
68 stars 43 forks source link

dbm problems #37

Closed maximilianh closed 1 year ago

maximilianh commented 4 years ago

From Jubina Benny:

When I try running the example command: python crispor.py sacCer3 sampleFiles/in/sample.sacCer3.fa sampleFiles/mine/sample.sacCer3.tsv -o sampleFiles/mine/sample.sacCer3.mine.offs.tsv

I get this error:

Traceback (most recent call last): File "crispor.py", line 8458, in main() File "crispor.py", line 8455, in main mainCommandLine() File "crispor.py", line 8264, in mainCommandLine getOfftargets(seq, org, pamPat, batchId, startDict, ConsQueue()) File "crispor.py", line 4377, in getOfftargets processSubmission(faFname, org, pamDesc, otBedFname, batchBase, batchId, queue) File "crispor.py", line 3912, in processSubmission createBatchEffScoreTable(batchId, queue) File "crispor.py", line 3515, in createBatchEffScoreTable guideRows = calcSaveEffScores(batchId, seq, extSeq, pam, queue) File "crispor.py", line 3457, in calcSaveEffScores saveOutcomeData(batchId, mutScores) File "crispor.py", line 4254, in saveOutcomeData import dbm ImportError: No module named dbm

maximilianh commented 4 years ago

python 2.7.15

maximilianh commented 4 years ago

she writes: I found a way.

I re-write the import dbm in crispor.py (line number 4254) to import gdbm and line number 4255 to gdbm.open

because for this definition (saveoutcomedata) there is no try and except given as given in the readoutcomedata.

and its working fine.

tiramisutes commented 4 years ago

Besides dbm, the tensorflow and theano packages are still difficult to install for python2.7 when cpf1 PAM is used, whether to use pip or conda. Maybe python3.6 is more best if this software can update to support for py3.6.

maximilianh commented 4 years ago

I'm sorry, but upgrading this software to python3 will probably not be easy. I installed theano and tensorflow without too much trouble. Where did you run into issues?

On Fri, Jan 3, 2020 at 6:18 PM hope notifications@github.com wrote:

Besides dbm, the tensorflow and theano packages are still difficult to install for python2.7, whether to use pip or conda. Maybe python3.6 is more best if this software can update to support for py3.6.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/maximilianh/crisporWebsite/issues/37?email_source=notifications&email_token=AACL4TN3URQN5JVXJ2XVHLTQ37WX3A5CNFSM4JWWWAW2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEICO5JQ#issuecomment-570748582, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACL4TJPZT6SYKUEXQ3DMZDQ37WX3ANCNFSM4JWWWAWQ .

geraldocantelli commented 3 years ago

Hello, I am having the same problem but the suggestion above (replace in the lines 4254 and 4255) didn't work for me: This is what happened: sudo python ./crispor.py sacCer3 sampleFiles/in/sample.sacCer3.fa sampleFiles/mine/sample.sacCer3.tsv -o sampleFiles/mine/sample.sacCer3.mine.offs.tsv INFO:root: * running on sequence 'testSeq', guideLen=20, seqLen=182 INFO:root:Progress x50sPGMoTvUagv3zWjGg - bwasw - Searching genome for one 100% identical match to input sequence [M::bwa_idx_load_from_disk] read 0 ALT contigs [bsw2_aln] read 1 sequences/pairs (182 bp) ... [main] Version: 0.7.15-r1140 [main] CMD: /var/www/html/crisporWebsite/bin/Linux/bwa bwasw -b 100 -q 100 -T 20 /var/www/html/crisporWebsite/genomes/sacCer3/sacCer3.fa /tmp/primer3In43P4iZ.txt [main] Real time: 0.030 sec; CPU: 0.028 sec INFO:root:Progress x50sPGMoTvUagv3zWjGg - effScores - Calculating guide efficiency scores Traceback (most recent call last): File "./crispor.py", line 8617, in main() File "./crispor.py", line 8614, in main mainCommandLine() File "./crispor.py", line 8423, in mainCommandLine getOfftargets(seq, org, pamPat, batchId, startDict, ConsQueue()) File "./crispor.py", line 4463, in getOfftargets processSubmission(faFname, org, pamDesc, otBedFname, batchBase, batchId, queue) File "./crispor.py", line 3988, in processSubmission createBatchEffScoreTable(batchId, queue) File "./crispor.py", line 3590, in createBatchEffScoreTable guideRows = calcSaveEffScores(batchId, seq, extSeq, pam, queue) File "./crispor.py", line 3527, in calcSaveEffScores effScores = crisporEffScores.calcAllScores(longSeqs, enzyme=enz, scoreNames=scoreNames) File "/var/www/html/crisporWebsite/crisporEffScores.py", line 933, in calcAllScores scores["fusiOld"] = calcFusiDoench(trimSeqs(seqs, -24, 6)) File "/var/www/html/crisporWebsite/crisporEffScores.py", line 1174, in calcFusiDoench model= pickle.load(f) # if this fails, install sklearn like this: pip install scikit-learn==0.16.1 File "/usr/lib/python2.7/pickle.py", line 1384, in load return Unpickler(file).load() File "/usr/lib/python2.7/pickle.py", line 864, in load dispatchkey File "/usr/lib/python2.7/pickle.py", line 1096, in load_global klass = self.find_class(module, name) File "/usr/lib/python2.7/pickle.py", line 1132, in find_class klass = getattr(mod, name) AttributeError: 'module' object has no attribute 'PresortBestSplitter'

Could some one help me please? Best regards, Geraldo Cesar Cantelli

maximilianh commented 3 years ago

Do you have sklearn installed ?

On Mon 16 Nov 2020 at 22:09, geraldocantelli notifications@github.com wrote:

Hello, I am having the same problem but the suggestion above (replace in the lines 4254 and 4255) didn't work for me: This is what happened: sudo python ./crispor.py sacCer3 sampleFiles/in/sample.sacCer3.fa sampleFiles/mine/sample.sacCer3.tsv -o sampleFiles/mine/sample.sacCer3.mine.offs.tsv INFO:root: * running on sequence 'testSeq', guideLen=20, seqLen=182 INFO:root:Progress x50sPGMoTvUagv3zWjGg - bwasw - Searching genome for one 100% identical match to input sequence [M::bwa_idx_load_from_disk] read 0 ALT contigs [bsw2_aln] read 1 sequences/pairs (182 bp) ... [main] Version: 0.7.15-r1140 [main] CMD: /var/www/html/crisporWebsite/bin/Linux/bwa bwasw -b 100 -q 100 -T 20 /var/www/html/crisporWebsite/genomes/sacCer3/sacCer3.fa /tmp/primer3In43P4iZ.txt [main] Real time: 0.030 sec; CPU: 0.028 sec INFO:root:Progress x50sPGMoTvUagv3zWjGg - effScores - Calculating guide efficiency scores Traceback (most recent call last): File "./crispor.py", line 8617, in main() File "./crispor.py", line 8614, in main mainCommandLine() File "./crispor.py", line 8423, in mainCommandLine getOfftargets(seq, org, pamPat, batchId, startDict, ConsQueue()) File "./crispor.py", line 4463, in getOfftargets processSubmission(faFname, org, pamDesc, otBedFname, batchBase, batchId, queue) File "./crispor.py", line 3988, in processSubmission createBatchEffScoreTable(batchId, queue) File "./crispor.py", line 3590, in createBatchEffScoreTable guideRows = calcSaveEffScores(batchId, seq, extSeq, pam, queue) File "./crispor.py", line 3527, in calcSaveEffScores effScores = crisporEffScores.calcAllScores(longSeqs, enzyme=enz, scoreNames=scoreNames) File "/var/www/html/crisporWebsite/crisporEffScores.py", line 933, in calcAllScores scores["fusiOld"] = calcFusiDoench(trimSeqs(seqs, -24, 6)) File "/var/www/html/crisporWebsite/crisporEffScores.py", line 1174, in calcFusiDoench model= pickle.load(f) # if this fails, install sklearn like this: pip install scikit-learn==0.16.1 File "/usr/lib/python2.7/pickle.py", line 1384, in load return Unpickler(file).load() File "/usr/lib/python2.7/pickle.py", line 864, in load dispatchkey http://self File "/usr/lib/python2.7/pickle.py", line 1096, in load_global klass = self.find_class(module, name) File "/usr/lib/python2.7/pickle.py", line 1132, in find_class klass = getattr(mod, name) AttributeError: 'module' object has no attribute 'PresortBestSplitter'

Could some one help me please? Best regards, Geraldo Cesar Cantelli

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/maximilianh/crisporWebsite/issues/37#issuecomment-728330679, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACL4TIBOH2SRRE5PMZV3EDSQGIHTANCNFSM4JWWWAWQ .

maximilianh commented 1 year ago

These problems should all be solved now with the upgrade to python3 of the entire crispor source code.