This is a test version of Biostars. For the public version, visit https://www.biostars.org.
KissDE might not work with R 4.0.2 (?) - on Ubuntu

Hi,

after my inability to launch the new version of kiss2refgenome : this post, I encoutered another problem. For unrelated reasons, I needed R 4.0 (I was on 3.6). Therefore, I did the upgrade in the "dumb" way, by completely removing the previous install and ALL the packages (because I figured it was time do to a little cleanup), instead of installing it side to side.

My previous usage of KisSplice went great with the new version (2.5). This one use the count option at 2 by default (contrary to version 2.4, which use count = 0). So after kissplice2refgenome (1.2.3), with KissDE I was using the kissplice2counts function with the option counts = 2. Which worked perfectly.

myCounts <- kissplice2counts(k2rg_file, counts = 2, pairedEnd = TRUE, k2rg = TRUE)

But now that I have installed R 4.0.2, and only KissDE (with all the dependencies of course), nothing works anymore. I have tried the exact same output from kiss2refgenome, and the exact same command that worked when I was using R 3.6. This is the error and warnings I got :

Error in rep_len(0, nbcond) : incorrect 'length.out' value
De plus : Warning messages:
1: In matrix(unlist(split2), nrow = 3) :
  data length [706] is not a divisor nor a multiple of the number of lines [3]
2: In .countsSetk2rg(countsUp, counts, pairedEnd, order, exonicReads) :
  NAs introduced during automatic conversion
3: In .countsSetk2rg(countsUp, counts, pairedEnd, order, exonicReads) :
  NAs introduced during automatic conversion

(I had the silliest idea of setting the messages in French, so I hope I translated them right.)

I will try to revert to R 3.6, and see what will happen. It SHOULD works. If it works, then R 4.0, might be responsible.

Does anyone had this problem (considering R 4.0 is still kinda new, I guess not ?) ?

In anycase, I will update this when I'm done.

Thanks !

EDIT: So, I did exactly what I did for R 4.0.2 : I installed R 3.6.3, and only KissDE and its dependencies. Guess what ? KissDE is working again.

EDIT2: It works on a R 4.0 on a Windows computer...

kissplice

Use docker or conda environments to avoid dependency conflicts and version issues.

Hi David,

KissDE should work with R 4.0, but I don't really know what is going on here, I don't remember seeing this error/warning messages. It looks to me that this is a file parsing problem, maybe linked to the counts parameter. Could you show me the first 2 lines of your k2rg file ?

Audric

Hi,

with 200 samples it won't look good if I paste it here ! But I guess the part that you want is this one (not from the same file, but has been processed with the same kissplice version, and has the same problem): AS1_8,SB1_8,S1_0,ASSB1_8,AS2_0,SB2_0,S2_0,ASSB2_0,AS3_0,SB3_0,S3_0,ASSB3_0,AS4_0,SB4_0,S4_0,ASSB4_0,AS5_0,SB5_0,S5_0,ASSB5_0,AS6_5,SB6_5,S6_0,ASSB6_5,AS7_8,SB7_8,S7_0,ASSB7_8,AS8_3,SB8_3,S8_0,ASSB8_3,AS9_4,SB9_4,S9_0,ASSB9_4,AS10_1,SB10_1,S10_0,ASSB10_1,AS11_18,SB11_18,S11_0,ASSB11_18,AS12_5,SB12_5,S12_0,ASSB12_5,AS13_33,SB13_33,S13_0,ASSB13_33,AS14_18,SB14_18,S14_0,ASSB14_18,AS15_12,SB15_12,S15_0,ASSB15_12,AS16_0,SB16_0,S16_0,ASSB16_0 AB1_0,AB2_0,AB3_14,AB4_15,AB5_8,AB6_0,AB7_0,AB8_0,AB9_0,AB10_0,AB11_0,AB12_0,AB13_0,AB14_0,AB15_0,AB16_0

I have tried with the others count options but none have worked. If I am not mistaken, count=2 should be the good one.

Just in case, I put the 2 first line on a online spreadsheet :

https://docs.google.com/spreadsheets/d/1ERVABmopX5yjdiBwQQsPJ5CpGqcfAbcEXky9YjPKqME/edit?usp=sharing

Thanks !

Thank you David !

Can you tell me if you have exactly 200 samples, or maybe more of them like 235 or 236 ? In that case, the problematic line should be the one containing the ABX_Y counts.

I just sent you a request to access your spreadsheet !

Thanks !

Audric

No, it is exactly 187 samples. But the same problem has also occured on the example on the spreadsheet (with 8 samples).

The first warning :

1: In matrix(unlist(split2), nrow = 3) :
 data length [706] is not a divisor nor a multiple of the number of lines [3]

only occured on the "big" k2rg file, but the error was still the same. But as it works on a Windows computer, the problem is very probably on my end, on my Ubuntu installation.

The counts should be separated by "|" and not ",". That is what make kissDE bug. It works when I manually replaced the coma.

The questions now are : why is there comas instead of "|" (is there a problem with kissplice2refgenome?), and why did it worked on windows ?

Did you use the kissplice2refgenome 2.0.0 downloaded from the KisSplice web page ?

Ok, it has to do with kissplice2refgenome version (sorry for the delay, biostars wouldn't allow me to respond without a 6 hours wait)

Indeed, the example I gave you was generated with kissplice2refgenome 1.2.3 (from the KisSplice web page). And with this version, the separator are comas ! KissDE on R 3.6 works perfectly with the comas.

What I tested on Windows + R 4.0 was a file generated with kissplice2refgenome 2.0.0, where the separator are "|" (I did not notice the difference at first). It works with R 4.0. So I re-tried but with the file generated by 1.2.3 (with comas), and it doesn't work on Windows + R 4.0, same error :

Error in rep_len(0, nbcond) : valeur 'length.out' incorrecte
De plus : Warning messages:
1: In .countsSetk2rg(countsUp, counts, pairedEnd, order, exonicReads) :
NAs introduits lors de la conversion automatique
2: In .countsSetk2rg(countsUp, counts, pairedEnd, order, exonicReads) :
NAs introduits lors de la conversion automatique

So...

the output of kissplice2refgenome 1.2.3 (",") are not readable by KissDE with R 4.0 (Windows + Linux).

But the output of kissplice2refgenome 2.0.0 ("|") are readable by KissDE with R 4.0 (Windows + Linux).

And the output of kissplice2refgenome 2.0.0 ("|") are not readable by KissDE with R 3.6 (Windows + Linux).

Hi,

The computer I usually use for this doesn't have R 4.0 anymore, so I tried to replicate this on a Windows computer with R 4.0, and... it works.

Note that I tested a different k2rg file, because the Windows machine is only a weak laptop that probably won't like an almost 2 Go k2rg file. Nevertheless, on Ubuntu, I had the same error with both files (the one in example in the previous post, and the big one).

I guess the problem was coming from my R 4.0 on Linux...

1 answer

Thanks for pointing that out!

I just found the commit I did where I changed the delimiter in kissDE for it to be compatible with the new kissplice2refgenome version, so I would say that that the current kissplice2refgenome version is only compatible with the current kissDE version.

I fixed that (kissDE will be compatible with old versions of kissplice2refgenome in the next bioconductor release), but I strongly recommend to use the last kissplice2refgenome script as it is much faster and accurate!

Best,

Audric

As I see no reasons to keep using the "old" kissplice2refgenome, there is no problems anymore. Thanks !

Log in to answer this question.