macelik / MoSwA

MIT License
0 stars 0 forks source link

working example? #1

Open kiramt opened 3 years ago

kiramt commented 3 years ago

Hi - saw your poster at ISMB and was hoping to try out MoSwA. Do you have a working demo example which can be run through? I tried running on my own examples but keep getting list index out of range errors.

macelik commented 3 years ago

Hi - saw your poster at ISMB and was hoping to try out MoSwA. Do you have a working demo example which can be run through? I tried running on my own examples but keep getting list index out of range errors.

Hello,

Thank you for your interest. I have pushed the latest one from my end. Could you please try again? If you recieve the same error, could you please upload a screen shot?

macelik commented 3 years ago

Hi - saw your poster at ISMB and was hoping to try out MoSwA. Do you have a working demo example which can be run through? I tried running on my own examples but keep getting list index out of range errors.

kiramt commented 3 years ago

I don't see any updates in the repo - all dates from 3 months ago. I'll see what I can do about sending you more details of the error though.

macelik commented 3 years ago

I don't see any updates in the repo - all dates from 3 months ago. I'll see what I can do about sending you more details of the error though.

you can always e-mail me too. my email is: a.muhammetcelik@gmail.com

Kind regards, Muhammet

kiramt commented 3 years ago

I've attached the MSA I'm using in testAPOE.fasta (it's not very big but had to zip it to get github to accept it). testAPOE.fasta.zip

I ran dima-cli -i ~/Documents/testAPOE.fasta -o output.json -l 9 and the output.json is also attached as zip. output.json.zip

When I now run: python MoSwA.py -i output.json -t 9 I get IndexError: list index out of range. This is at line 111 and the immediate problem seems to be that pos=317 but the length of myd=314. Depending on what inputs I give I get the same error at line 121 for similar reasons.

I wasn't sure what t value I should use but it doesn't seem to make much difference to the error.

macelik commented 3 years ago

I've attached the MSA I'm using in testAPOE.fasta (it's not very big but had to zip it to get github to accept it). testAPOE.fasta.zip

I ran dima-cli -i ~/Documents/testAPOE.fasta -o output.json -l 9 and the output.json is also attached as zip. output.json.zip

When I now run: python MoSwA.py -i output.json -t 9 I get IndexError: list index out of range. This is at line 111 and the immediate problem seems to be that pos=317 but the length of myd=314. Depending on what inputs I give I get the same error at line 121 for similar reasons.

I wasn't sure what t value I should use but it doesn't seem to make much difference to the error.

Hi, i have taken a look and found the culprit. :) it seems that some of the positions are skipped by DiMA (i think because there are no sequences to quantify within that nonamer, example position 23, see the picture below).

If you need it urgent, i ll work on it and make it work. If, you can wait, i ll contact the author of DiMA and get it fixed.

Ekran Alıntısı

kiramt commented 3 years ago

Thanks for taking a look! I can wait for DiMA to be fixed.

macelik commented 3 years ago

Thanks for taking a look! I can wait for DiMA to be fixed.

I have already informed the DiMA author, once he is done, I will let you know in here to try it out and also update my code in here. :) Thank you for your interest.

I will be looking forward to hear your feedback on MoSwA once we get this done. :)

macelik commented 3 years ago

Thanks for taking a look! I can wait for DiMA to be fixed.

Hello,

I have updated MoSwA code. Could you please try and let me know?

kiramt commented 3 years ago

Thanks - I'm not getting list index out of range errors any more but I get a different error:

File ".../MoSwA/build/RunAndCompare.py", line 9, in __init__
    self.results = Dima(sequences=fname, kmer_length=dima_kmer).run().results
TypeError: __init__() missing 1 required positional argument: 'sequences_source'

I've checked and my version of dima-cli is 2.0.1 as in the requirements file.

macelik commented 3 years ago

Thanks - I'm not getting list index out of range errors any more but I get a different error:

File ".../MoSwA/build/RunAndCompare.py", line 9, in __init__
    self.results = Dima(sequences=fname, kmer_length=dima_kmer).run().results
TypeError: __init__() missing 1 required positional argument: 'sequences_source'

I've checked and my version of dima-cli is 2.0.1 as in the requirements file.

Hey, could you please try

pip install -U dima-cli

kiramt commented 3 years ago

That installs dima 2.0.3, and so I reran dima-cli -i ~/Documents/testAPOE.fasta -o output.json -l 9 in case the format has changed.

Now running python MoSwA.py -i ../output.json -t 9 -o moswa_output gives:

Directory moswa_output created successfully
Dima is running
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: Custom { kind: Other, error: "Expected > at record start." }', src/lib.rs:459:24
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Traceback (most recent call last):
  File "MoSwA.py", line 87, in <module>
    analyse = RunAndCompare.GetMotifs(fname,dima_kmer)
  File "...MoSwA/build/RunAndCompare.py", line 9, in __init__
    self.results = Dima(sequences=fname, kmer_length=dima_kmer).run().results
  File "...python3.7/site-packages/dima/dima.py", line 101, in run
    return get_results_objs(**arguments)
pyo3_runtime.PanicException: called `Result::unwrap()` on an `Err` value: Custom { kind: Other, error: "Expected > at record start." }
macelik commented 3 years ago

That installs dima 2.0.3, and so I reran dima-cli -i ~/Documents/testAPOE.fasta -o output.json -l 9 in case the format has changed.

Now running python MoSwA.py -i ../output.json -t 9 -o moswa_output gives:

Directory moswa_output created successfully
Dima is running
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: Custom { kind: Other, error: "Expected > at record start." }', src/lib.rs:459:24
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Traceback (most recent call last):
  File "MoSwA.py", line 87, in <module>
    analyse = RunAndCompare.GetMotifs(fname,dima_kmer)
  File "...MoSwA/build/RunAndCompare.py", line 9, in __init__
    self.results = Dima(sequences=fname, kmer_length=dima_kmer).run().results
  File "...python3.7/site-packages/dima/dima.py", line 101, in run
    return get_results_objs(**arguments)
pyo3_runtime.PanicException: called `Result::unwrap()` on an `Err` value: Custom { kind: Other, error: "Expected > at record start." }

Oh hey, I am sorry I could not find time to update the usage part. Please, pass the aligned fasta file directly to MoSwA, now you do not have to run them seperately. I will also update the ReadMe file.

./MoSwA.py -i ~/Documents/testAPOE.fasta -o moswa_output -t 9

Please do let me know.

kiramt commented 3 years ago

Ahh - that's it working now, thank you!

macelik commented 3 years ago

Ahh - that's it working now, thank you!

I am glad we could get it working. report.html still needs work, there are grammer errors that I am aware. We are writing the paper and we will fix those along the way. I'd appreciate any feedback if you can. :)

macelik commented 3 years ago

Ahh - that's it working now, thank you!

Hello there,

There was a bug in the algo, the positions were getting screwed up. I have updated my code and it is fixed now. Moreover, I have added dev branch. The difference with the main one is the json file is more structured and produces only one json. We are working on a web service to run MoSwA and then visualize the data in a better way.