Numpy Error while running idiffir

Issue #3 new
vamshidhar gangu created an issue

Hi,

Ran into this numpy multiplication error. using the latest 0.3.1 version.

----------------
 Loading models
----------------
Loading and validating gene models from /root/genome/dm6_release96/Drosophila_melanogaster.BDGP6.22.96.gtf
....|....|....|....|....|
Skipped 17756 records missing transcript_id attributes
-----------------------
 Making reduced models
-----------------------
Building splicing models
....|....|....|....|....|....|....|....|....|....10000
....|....|....|....|....|....|....|...17753 genes
----------------------
 Computing statistics
----------------------
Computing differential splicing scores...
Process Process-1:
Traceback (most recent call last):
  File "/root/programs/miniconda3/envs/idiffir/lib/python2.7/multiprocessing/process.py", line 267, in _bootstrap
    self.run()
  File "/root/programs/miniconda3/envs/idiffir/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/programs/miniconda3/envs/idiffir/lib/python2.7/site-packages/iDiffIR/Stat.py", line 331, in procGeneStatsIR
    f2LNorm)
  File "/root/programs/miniconda3/envs/idiffir/lib/python2.7/site-packages/iDiffIR/Stat.py", line 1063, in computeSE
    F1 = numpy.array(list(chain.from_iterable( [f1ExonExp[i]*f1RepExps[i] for i in xrange(len(f1ExonExp))]))) + EPS
TypeError: can't multiply sequence by non-int of type 'numpy.float64'

Comments (3)

  1. Gennady Denisov

    Solution:

    in the source file iDiffIR/Stat.py, replace the lines #1063 and #1064 with the following:

    F1 = numpy.array(list(chain.from_iterable( [f1ExonExp[i]*numpy.array(f1RepExps[i]) for i in xrange(len(f1ExonExp))]))) + EPS
    F2 = numpy.array(list(chain.from_iterable( [f2ExonExp[i]*numpy.array(f2RepExps[i]) for i in xrange(len(f2ExonExp))]))) + EPS

    Then reinstall the application.

  2. Log in to comment