manulera / pombase_gtf_file

A script to convert pombase gff3 file into GFT format compatible with transvar.
MIT License
0 stars 0 forks source link

Working version? #1

Closed manulera closed 1 year ago

manulera commented 1 year ago

Hi @kimrutherford. This is the repository. It should be possible to generate the gtf file at data/pombe_genome.gtf by running the script run_with_docker.sh. See the readme for more details.

kimrutherford commented 1 year ago

Hi @manulera

I tried run_with_docker.sh on oliver1 and got ImportError: No module named pandas

Any ideas?

Full output:

> bash run_with_docker.sh 
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 1193k  100 1193k    0     0  18.7M      0 --:--:-- --:--:-- --:--:-- 18.7M
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 4518k  100 4518k    0     0   339M      0 --:--:-- --:--:-- --:--:--  339M
1.1.1--pyhdfd78af_0: Pulling from biocontainers/bioconvert
Digest: sha256:20dc2db9f7cc5569fa3e01f3376e057725a51ad05db1d9a412a2135faa225e8b
Status: Image is up to date for quay.io/biocontainers/bioconvert:1.1.1--pyhdfd78af_0
quay.io/biocontainers/bioconvert:1.1.1--pyhdfd78af_0
WARNING [bioconvert.core.base:147]:  converter 'CLUSTAL2FASTA': method goalign is not available
WARNING [bioconvert.core.base:147]:  converter 'CLUSTAL2NEXUS': method goalign is not available
WARNING [bioconvert.core.base:147]:  converter 'FAST52POD5': method pod5 is not available
WARNING [bioconvert.core.base:147]:  converter 'FASTA2CLUSTAL': method goalign is not available
WARNING [bioconvert.core.base:147]:  converter 'FASTA2NEXUS': method goalign is not available
WARNING [bioconvert.core.base:147]:  converter 'FASTA2PHYLIP': method goalign is not available
WARNING [bioconvert.core.base:147]:  converter 'NEWICK2NEXUS': method gotree is not available
WARNING [bioconvert.core.base:147]:  converter 'NEWICK2PHYLOXML': method gotree is not available
WARNING [bioconvert.core.base:147]:  converter 'NEXUS2CLUSTAL': method goalign is not available
WARNING [bioconvert.core.base:147]:  converter 'NEXUS2FASTA': method goalign is not available
WARNING [bioconvert.core.base:147]:  converter 'NEXUS2NEWICK': method gotree is not available
WARNING [bioconvert.core.base:147]:  converter 'NEXUS2PHYLIP': method goalign is not available
WARNING [bioconvert.core.base:147]:  converter 'NEXUS2PHYLOXML': method gotree is not available
WARNING [bioconvert.core.base:147]:  converter 'PHYLIP2FASTA': method goalign is not available
WARNING [bioconvert.core.base:147]:  converter 'PHYLIP2NEXUS': method goalign is not available
WARNING [bioconvert.core.base:147]:  converter 'PHYLOXML2NEWICK': method gotree is not available
WARNING [bioconvert.core.base:147]:  converter 'PHYLOXML2NEXUS': method gotree is not available
Traceback (most recent call last):
  File "scripts/pombasegtf_to_ensemblgtf.py", line 1, in <module>
    import pandas
ImportError: No module named pandas
manulera commented 1 year ago

Hmm, that's weird. Are you using the latest version of the repository? I cloned a fresh copy and it's working for me.

kimrutherford commented 1 year ago

Are you using the latest version of the repository? I cloned a fresh copy and it's working for me.

Yep, it's the latest version. It works for me on my desktop but not on oliver1.

I'm just booting up a fresh installation of Ubuntu in a VM to see if it works there.

manulera commented 1 year ago

hmm... the script relies on the fact that pandas seems to be installed in the bioconvert container, but I don't install the depency specifically.

If we don't manage to make it work, maybe adding pip install pandas or something like that to the docker run line is a hacky solution (unlikely that the pandas version matters for what I am doing)

kimrutherford commented 1 year ago

So there was a simple solution: I changed "python" to "python3" in the run_with_docker.sh script. On oliver1 the "python" command is python v2. We have pandas installed on oliver1 but only for python v3.

manulera commented 1 year ago

Oh that's an error on my side. I somehow thought the python command was being executed in the container, but it's not, the ";" makes a new command entirely.

manulera commented 1 year ago

I have fixed it, maybe it was not necessary, but I think it's best since pandas is included in the container. Now the python script is executed inside the container.

https://github.com/manulera/pombase_gtf_file/commit/3effba3313aeae07698c6bdf511a52ab93676873

kimrutherford commented 1 year ago

I have fixed it, maybe it was not necessary, but I think it's best since pandas is included in the container. Now the python script is executed inside the container.

Great. Thanks. That now works on oliver1.