Invalid value for --input-path

Hi,

I am running a QIIME2-2021.4 Virtual Box. I have searched the forum and feel like I have exhausted my options. I have downloaded paired-end fastq files (forward and reverse) from different NCBI bioprojects for a meta-analysis. The problem at hand is the error message from QIIME, 'Invalid value for 'input-path': Path 'PRJNA273295' does not exist.'

Here is what I typed in:
--type 'SampleData[PairedEndSequencesWithQuality]'
--input-path PRJNA273295
--input-format PairedEndFastqManifestPhred64V2
--output-path demux-paired-end.qza

I have also tried 'PairedEndFastqManifestPhred33V2 with no success. This is my manifest:
PRJNA273295manifest.txt (11.0 KB)

Any assistance would be greatly appreciated!

Thanks,
Tim

Welcome to the forum, @horsemant!

This error message is popping up because your manifest file is pointing to a directory/file that does not exist. The tricky bit here is that manifest files require absolute filepaths. (format details in the importing tutorial). Use absolute paths to your files and you should be in good shape.

Chris :hippopotamus:

Oooooh boy, @horsemant . I totally misread your manifest file, and overlooked some things on my first pass here.

  1. Your manifest file is named PRJNA273295manifest.txt , but you are telling QIIME 2 to use a manifest named PRJNA273295. So, the Path 'PRJNA273295' does not exist.
  2. Your manifest file is using absolute filepaths, but they are Windows-style paths to a location on a windows system. Where and how is your version of QIIME 2 installed? (e.g. is it being run from a linux environment on WSL2? I suspect you'll need unix-style filepaths in order to make this work.

Hi Chris,

  1. So --input-path PRJNA273295manifest.tsv (it is tab-delimited) would be more appropriate? I thought I was telling QIIME 2 to look for the manifest in the PRJNA273295 folder thus the 'Path', thanks for correcting!
  2. Virtual Box with a linux environment and Ubuntu (64-bit) OS. Do you have an example of an unix-style filepath?

Yep! And as a side-note, linux generally doesn't care as much about file extensions as windows does. Ubuntu has some tools that use extensions like .tsv to decide what programs might open a file, but you could name it my_awesome.manifest and QIIME 2 wouldn't care - the part of the name after the . is part of the name, no more and no less.

The filepaths you provide should always point exactly to the thing you want QIIME 2 to use. This can be a little confusing, as there are a few cases where the thing QIIME 2 expects to receive is actually a directory of things (e.g. emp-paired imports). Even in this case, though, you're pointing QIIME 2 directly at the thing (directory) you want it to use.

Thanks for clarifying. This means QIIME 2 is installed on a "virtual" operating system being run on your "host" machine. Your Ubuntu system only knows about and has access to the things you provide it. (e.g. it only gets access to as much RAM as you allocate it).

You'll need to make sure that files you make in Windows are shared with the Ubuntu image. If they are, you should be able to find them using the Ubuntu file browser or terminal. Here are some ways in which file paths differ across the two systems. I'm sure there's a better resource, but a little googling should answer any other questions you have about filepath/filesystem differences.

I was able to find my manifest in the WSL and opened in the terminal. I typed in 'ls' to ensure that the file was there as well. Based on what I could find regarding linux filepaths, I came up with the revised manifest: PRJNA273295manifest2.txt (9.2 KB)

I am still getting the same error. I'm sure it is something relatively easy that I am overlooking here.

If you're getting the exact same error as above, you're probably passing the wrong name for your manifest file. File path errors are super frustrating because they're almost always trivial mistakes. Take your time, check your filepaths visually, and make liberal use of tab-completion when entering commands at the command line. If your filepath doesn't tab-complete, it's probably not correct.

Side note, PhredV33 and PhredV64 are different encodings. Using the wrong one would be bad, so don't swap those while trying to fix other errors. There are a bunch of good discussions about what they are and how they work on here, if you need details that aren't in the importing tutorial linked above.

Well, I think we cleared the input-path issue up. I am getting the following now:

Not sure where the filepath on line 1 and column error is stemming from b/c the fastq is clearly there in the folder
PRJNA273295manifest4.txt (9.2 KB)

Hi there @horsemant! The error coming from QIIME 2 isn't wrong - you really don't have a file with that name, at that location! Pay particular attention to the first part of the filepath: /home/sf_Desktop, while if we look at the blue text in your terminal, there it says /media/sf_Desktop - that is two completely different locations! I think once you replace that typo in your manifest you should be good to go. Keep us posted! :qiime2:

1 Like

Unfortunately, even after switching out 'home' for the correct 'media' location in the manifest, I am still receiving the error:

"There was a problem importing PRJNA273295manifest4.txt:
PRJNA273295manifest4.txt. is not an PairedEndFastqManifestPhred33V2 file:
'Filepath on line 19 and column "forward-absolute-filepath" could not be found (/media/sf_Desktop/sratoolkit.2.11.0-win64/bin/SRAfastq/Human/PRJNA273295/SRR1778077_1.fastq) for sample "SRR1778077"."

Have you double-checked that that file is present? The easiest way is to run the following:

ls /media/sf_Desktop/sratoolkit.2.11.0-win64/bin/SRAfastq/Human/PRJNA273295/SRR1778077_1.fastq

It had an extra 7 in the manifest. The import worked!

Thank you so much Chris and Matthew for the help!

2 Likes

I had an error message similar to the OP and found a solution to my situation, which I thought I'd share in case it helps anyone else in the future. In my case, I was running QIIME2 on an institutional HPC.
All my absolute paths looked correct. However, in the HPC system (and perhaps it's the same for other systems), the path to my files/directories (as identified by 'pwd' in a terminal) was different to the physical location/path (as identified by 'pwd -P'). Once I specified the absolute physical path, everything worked beautifully.

2 Likes