wyang17 / SQuIRE

Software for Quantifying Interspersed Repeat Expression
Other
49 stars 29 forks source link

Does the read length (-r xxx) in the squire Map and Count matter? #37

Open MaxwellShih opened 4 years ago

MaxwellShih commented 4 years ago

Hello, I am processing some fastq files coming out of trimmomatics trimming. They have different read lengths. What setting should I use for the squire Map and Count? The maximum or the minimum? Or shall I trim the reads to the minimum length and run it with a certain read length setting?

Mx

bvaldebenitom commented 4 years ago

Hi @MaxwellShih,

disclaimer: I'm not a developer of SQuIRE.

I hope you got this figured out, but the length has no impact whatsoever unless you chose the "--trim3" option too. If you already use Trimmomatic, then you wouldn't need to use it. It would be redundant, given that by that point you already trimmed your reads.

Hope this helps!

Best regards.

MaxwellShih commented 4 years ago

Hello @bvaldebenitom , UPDATE on 20200622: I didn't choose the "--trim3" option but failed the squire Map and Count without setting the read length. The error message below: squire Map: error: argument -r/--read_length is required squire Count: error: argument -r/--read_length is required


Thank you so much for your reply. Are you saying that if I don't choose the "--trim3" option I can skip the "-r xxx" input? That's super helpful. I thought I have to designate the read length, and that the mismatched read lengths, for example R1 120 bp but R2 125 bp, is the cause of my failure to finish the squire Map or squire Count. I am going to run without the read length input. Thank you~

emattei commented 3 years ago

read_length is required even without the trim3 option. Unclear why this is happening, most likely a bug

rpg18 commented 3 years ago

read_length is required for performing the mapping with STAR. If you check squire/Map.py, you will see that read_length is used in multiple STAR parameters, such as: https://github.com/wyang17/SQuIRE/blob/885bf4d39cdb98c13036a9019bad12c52f4fd790/squire/Map.py#L112 and https://github.com/wyang17/SQuIRE/blob/885bf4d39cdb98c13036a9019bad12c52f4fd790/squire/Map.py#L125 , and for the optional trimming parameter too https://github.com/wyang17/SQuIRE/blob/885bf4d39cdb98c13036a9019bad12c52f4fd790/squire/Map.py#L122 .

emattei commented 3 years ago

thank you for the clarification. I think the sentence "Read length (if trim3 selected, after trimming; required)" is confusing, that "if" suggests that it is used with trim3. I think that's where the confusion started for me and the other people who commented

rpg18 commented 3 years ago

Yes, it is confusing. I am not an expert of STAR, but I was curious about how SQuiRE processes the multi-mapping. I checked the Map.py script and I figured out that read_length is involved in some STAR parameters.

However, if I understood well what the parameter does, read_length is not required by STAR if trimming is selected, that is, trim3 != 0, when trim3 = "Int(s): number(s) of bases to clip from 3p of each mate. If one value is given, it will be assumed the same for both mates": https://github.com/wyang17/SQuIRE/blob/885bf4d39cdb98c13036a9019bad12c52f4fd790/squire/Map.py#L122

mars188 commented 2 years ago

I ran into the same problem. I tried to run squire without selecting trim3 but it's giving me error that I need to provide read length (-r xx). Was anyone able to make this work?

squire Map: error: argument -r/--read_length is required

mars188 commented 2 years ago

My .fastq files have varying read lengths. So which one is recommended to use? Maximum or average read length?

Surar commented 2 years ago

Hi everyone, I ran into the same problem. did anyone find a solution for this? should I include the maximum or the average read length? (I'm not using the trim3 option) thanks

mars188 commented 2 years ago

@Surar I read on the forum that mentioned that if we mention --read_length option or not, it has no effect on mapping etc. but it doesn't work without mentioning --read_length. So, I guess putting maximum read length should serve the purpose.

Surar commented 2 years ago

@mars188 thank you very much. I have tried to include the max read length and it worked fine but wanted to double check that I'm not doing something wrong. thanks for your help.