weights must be finite positive value
1
0
Entering edit mode
@noncodinggene-7018
Last seen 6.4 years ago

I'm using edgeR and an error for which I have not found a solution just appeared.

design <- model.matrix(~Cell.type, data = colData(summ.exp_norm))
dge$weights <- zinb.weights
dge <- estimateDisp(dge, design)

Error in .compressWeights(y, weights) :  weights must be finite positive values

 

As you can se no weight is out the rang 0-1 or infinite.

> sum(is.infinite(dge$weights))
[1] 0

 

Where can the error be?

Thanks

 

 

edger estimatedispersions • 1.7k views
ADD COMMENT
0
Entering edit mode

Why do you think is.infinite will tell you if any values are less than zero? Or for that matter, within the range 0-1?

ADD REPLY
0
Entering edit mode

Sorry, I forgot to show that also tested for max(dge$weights) and min(dge$weights), and values where 1 and 0.

ADD REPLY
0
Entering edit mode

Well, the test is

check.range <- suppressWarnings(range(weights))
    if (any(is.na(check.range)) || check.range[1] <= 0) {
        stop("weights must be finite positive values")
    }
   

So really it's saying you have either negative or NA values. This comes after running makeCompressedMatrix, so you might see if there are any NA values after that step with your weights matrix.

ADD REPLY
0
Entering edit mode
sumis.na(dge$weights))
outputs 0
ADD REPLY
0
Entering edit mode
Aaron Lun ★ 28k
@alun
Last seen 12 hours ago
The city by the bay

Pretty simple, really. If min(dge$weights) is zero, that's not positive.

ADD COMMENT
0
Entering edit mode

Oh yeah, <= 0 ...

ADD REPLY
0
Entering edit mode

What can be the source of this and how can I solve it?

I'm using edgeR for scRNA-seq, in order to manage droputs I use zinbwave

Just in case I've checked whether one condition has a gene for which its counts are all 0, and this does not happens.

This is how I calculate weights:

 zinb <- zinbFit(summ.exp_norm, K=2, epsilon=1000)
 zinb.weights <- computeObservationalWeights(zinb, assay(summ.exp_norm))
ADD REPLY
0
Entering edit mode

You'll have to take that up with the zinbwave authors.

ADD REPLY

Login before adding your answer.

Traffic: 577 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6