Importing Demultiplexed Data to Qiime2024 from a Sequencing Center

Hello, I've searched for this problem and the last reply was sometime in 2021. I wonder if anything has changed or if I'm just simply being silly.

I've received demultiplexed data and have been trying to follow the importing data protocols with a manifest. This is how my manifest is formatted in csv:

sample-id absolute-filepath direction
BN3_1_1 /Users/preomsarkar/Desktop/Selenium_16S/Paper_2/SeqCenter_Run1/BN3_1_1_S1_R1_001.fastq.gz forward

This is the code i'm running:

qiime tools import
--type 'SampleData[PairedEndSequencesWithQuality]'
--input-path /Users/preomsarkar/Desktop/Selenium_16S/Paper_2/Manifest.csv
--output-path seqcenter_demux.qza
--input-format PairedEndFastqManifestPhred33

This is the error I received and I feel like i've triple checked to make sure the file path is that:

Traceback (most recent call last):
File "/Users/preomsarkar/opt/anaconda3/envs/qiime2/lib/python3.8/site-packages/q2cli/builtin/tools.py", line 157, in import_data
artifact = qiime2.sdk.Artifact.import_data(type, input_path,
File "/Users/preomsarkar/opt/anaconda3/envs/qiime2/lib/python3.8/site-packages/qiime2/sdk/result.py", line 240, in import_data
return cls.from_view(type, view, view_type, provenance_capture,
File "/Users/preomsarkar/opt/anaconda3/envs/qiime2/lib/python3.8/site-packages/qiime2/sdk/result.py", line 267, in _from_view
result = transformation(view, validate_level)
File "/Users/preomsarkar/opt/anaconda3/envs/qiime2/lib/python3.8/site-packages/qiime2/core/transform.py", line 70, in transformation
new_view = transformer(view)
File "/Users/preomsarkar/opt/anaconda3/envs/qiime2/lib/python3.8/site-packages/q2_types/per_sample_sequences/_transformer.py", line 168, in _8
return _fastq_manifest_helper_partial(fmt, _copy_with_compression,
File "/Users/preomsarkar/opt/anaconda3/envs/qiime2/lib/python3.8/site-packages/q2_types/per_sample_sequences/_util.py", line 233, in _fastq_manifest_helper
input_manifest = _parse_and_validate_manifest(
File "/Users/preomsarkar/opt/anaconda3/envs/qiime2/lib/python3.8/site-packages/q2_types/per_sample_sequences/_util.py", line 116, in _parse_and_validate_manifest
raise FileNotFoundError(
FileNotFoundError: A path specified in the manifest does not exist or is not accessible: /Users/preomsarkar/Desktop/Selenium_16S/Paper_2/SeqCenter_Run1/BN3_1_1_S1_R1_001.fastq.gz

An unexpected error has occurred:

A path specified in the manifest does not exist or is not accessible: /Users/preomsarkar/Desktop/Selenium_16S/Paper_2/SeqCenter_Run1/BN3_1_1_S1_R1_001.fastq.gz

See above for debug info.

Any other thoughts?

Ah! Okay maybe I should've given it a bit more effort. There were spaces at the ends of my file paths and so that caused the files to not be found! If this is helpful at all to anyone, this is how I figured out my files were not being read properly. I made a quick python file to check my manifest:

-- coding: utf-8 --

import csv
import os

Open the manifest file

with open('manifest.csv', 'r') as file:
reader = csv.DictReader(file) # Read the CSV file as a dictionary
for row in reader: # Loop through each row
filepath = row['absolute-filepath'] # Extract the file path
if not os.path.isfile(filepath): # Check if the file exists
print(f"File not found: {filepath}")

Then you run it in the same folder your manifest is in:
python check_manifest.py

This spit out all my files lol so it because indicated to me that there was an issue with the manifest.

3 Likes

Its always good when its an easy fix! Thanks for posting your solution.