I have imported my raw sequences using manifest files. But Now problem is how I will remove primer and index sequences from my samples. Is it possible to remove from demux.qza. If not How I will then process my raw reads. Please help me. I am attaching below my index sequences and forward and reverse sequences.
Hi @Rishikesh12,
Here is a cutadapt tutorial. This will help with trimming primers off your sequences and there is a option to use demultiplexed sequences as input!
Hi @Rishikesh12,
it looks like i_7 and i_5 are typical dual index barcode names. i_5_1 and i_5_2 are reverse compliments of each other so i am not sure which one is in your sequences, but its one of those.
You will provide your metadata and your forward barcode column to these parameters
Thank You so much for your help. I will try this, But is there any way that I can know my barcodes are removed from raw reads or not. So that I can play with by changing the column of index_5_1 with index_5_2. Now last but not least can you please tell me how i will remove my primers, which option i will use. My forward primer is - GTACTCCTACGGGAGGCAGCA and my reverse primer is - GTGGACTACHVGGGTWTCTAAT
I face this issue while removing barcodes from my demux file.
(1/1) Invalid value for '--i-seqs': Expected an artifact of at least type
MultiplexedPairedEndBarcodeInSequence. An artifact of type
SampleData[PairedEndSequencesWithQuality] was provided.
Firstly I trimmed primer sequences from my demux file using that cutadapt trim-paired option there after I want to remove my barcode sequences. but unable to trim it. and Got error, which was i have mentioned above.
My command is
Basically what this error is saying is that your input for qiime cutadapt demux-paired is already demultiplexed. You need to input multiplexed data into qiime cutadapt demux-paired so that the command can demultiplex your data.
I can see two ways this possibly happened. However I am not sure exactly what steps you took given the information you provided.
You imported already demultiplexed data. If this happened you would probably not have barcodes in your sequences and you would just skip the qiime cutadapt demux-paired command.
You imported multiplexed sequences and then you ran a command that demultipexed your sequence. Then you used cutadapt trim-paired and now you are trying to demultiplex again.
If this is the case, I would highly suggest that you re-read the Demultiplexing and Trimming Adapters from Reads with q2-cutadapt tutorial that I linked above and here. These steps need to be followed in a specific order or else the types of inputs are going to be wrong like you see in the error message you sent.
In order to help you more on this, I would need to know all the commands that you ran to get to this error. Please list all of them in your next reply.
I have tried using the Cutadapt plugin to demultiplex my samples and remove primers. However, after following the Cutadapt plugin tutorial, I noticed that the quality of my reads was poor, and there was a significant loss in the number of reads per sample. I would appreciate it if you could take a look into this issue.
As per your suggestion, I experimented with the reverse barcodes by using index_i5_1 and index_i5_2. I have attached the quality of reads below. Please note that I demultiplexed both trim-seqs-1 and trim-seqs-2 separately. trim-seqs-1 is after removing index_i5_1 and trim-seqs-2 is after removing index_i5_2.
Hi @Rishikesh12,
I agree, these are not very strong read qualities. I would say that trim-seqs-2 looks like it uses the right barcodes. There reason I say this is because your sequence counts for trim-seqs-2 are evenly distributed across samples. In trim-seqs-1, we are seeing that most samples only ended up with a few sequences which leads me to think there was a barcode mismatch.
As for the quality, there is not much to be done at this point. Sometimes the quality is the quality and there is not a lot that can be done. Sorry to not be much help on that front. My advise would be to mess around with dada2 trim/trunc and filtering parameters to try to optimize the amount of reads you can keep.