harvardinformatics / snpArcher

Snakemake workflow for highly parallel variant calling designed for ease-of-use in non-model organisms.
MIT License
63 stars 30 forks source link

Key Error: workflow/rules/common.smk, line 25: 'resource_config' #182

Closed Erythroxylum closed 1 month ago

Erythroxylum commented 2 months ago

Hello again, Getting this error in the new update. I have read through the docs but I realize there could be some new different resource config setting within the new snakemake v8 settings that I am failing to modify. The E. coli test works but the dry run for my samplesheet is failing. I have uninstalled and reinstalled with the same results.

Snakemake version

8.10.7

Logs

snakemake --workflow-profile ./profiles/slurm --dry-run

Using workflow specific profile ./profiles/slurm for setting default command line arguments. snpArcher: Using Snakemake 8.10.7

/n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/snparcher_utils/init.py:12: FutureWarning: Downcasting behavior in replace is deprecated and will be removed in a future version. To retain the old behavior, explicitly call result.infer_objects(copy=False). To opt-in to the future behavior, set pd.set_option('future.no_silent_downcasting', True) samples = pd.readtable(config["samples"], sep=",", dtype=str).replace(' ', '', regex=True)

KeyError in file /n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/rules/common.smk, line 25: 'resource_config' File "/n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/rules/common.smk", line 25, in

Minimal example

mamba create -c conda-forge -c bioconda -n snparcher "snakemake>=8" "python==3.11.4" mamba activate snparcher git clone https://github.com/harvardinformatics/snpArcher.git cd snpArcher snakemake -d .test/ecoli --cores 1 --use-conda # works just fine

changed config/config.yaml

sample data sheet: added final prefix: s391v1 bigtemp: ./tmp maf: 0.02 missingness: 0.9

pip install snakemake-executor-plugin-slurm

Changed cluster parameters

nano profiles/slurm/config.yaml retries: 3 slurm_partition: "shared" runtime: 500

modify fastp, add lines to shell command: /n/holyscratch01/davis_lab/dwhite/snpArcher/workflow/rules/fastq.smk

"--trim_front1=5 " "--trim_front2=5 " "--cut_mean_quality=20" "--cut_front " "--cut_tail " "--trim_poly_g " "--trim_poly_x " "--length_required=35 "

conda activate snparcher snakemake --workflow-profile ./profiles/slurm --snakefile ./workflow/Snakefile --notemp --dryrun snakemake --workflow-profile ./profiles/slurm --dry-run # also fails

Thanks for your attention! Dawson

cademirch commented 2 months ago

This should be fixed in the latest merge. Try pulling main and running again.

On Thu, Apr 18, 2024 at 13:26 Dawson White @.***> wrote:

Hello again, Getting this error in the new update. I have read through the docs but I realize there could be some new different resource config setting within the new snakemake v8 settings that I am failing to modify. The E. coli test works but the dry run for my samplesheet is failing. I have uninstalled and reinstalled with the same results.

Snakemake version

8.10.7

Logs

snakemake --workflow-profile ./profiles/slurm --dry-run

Using workflow specific profile ./profiles/slurm for setting default command line arguments. snpArcher: Using Snakemake 8.10.7

/n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/snparcher_utils/init.py:12: FutureWarning: Downcasting behavior in replace is deprecated and will be removed in a future version. To retain the old behavior, explicitly call result.infer_objects(copy=False). To opt-in to the future behavior, set pd.set_option('future.no_silent_downcasting', True) samples = pd.readtable(config["samples"], sep=",", dtype=str).replace(' ', '', regex=True)

KeyError in file /n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/rules/common.smk, line 25: 'resource_config' File "/n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/rules/common.smk", line 25, in

Minimal example

mamba create -c conda-forge -c bioconda -n snparcher "snakemake>=8" "python==3.11.4" mamba activate snparcher git clone https://github.com/harvardinformatics/snpArcher.git cd snpArcher snakemake -d .test/ecoli --cores 1 --use-conda # works just fine

changed config/config.yaml

sample data sheet: added final prefix: s391v1 bigtemp: ./tmp maf: 0.02 missingness: 0.9

pip install snakemake-executor-plugin-slurm

Changed cluster parameters

nano profiles/slurm/config.yaml retries: 3 slurm_partition: "shared" runtime: 500

modify fastp, add lines to shell command:

/n/holyscratch01/davis_lab/dwhite/snpArcher/workflow/rules/fastq.smk "--trim_front1=5 " "--trim_front2=5 " "--cut_mean_quality=20" "--cut_front " "--cut_tail " "--trim_poly_g " "--trim_poly_x " "--length_required=35 "

Thanks for your attention! Dawson

— Reply to this email directly, view it on GitHub https://github.com/harvardinformatics/snpArcher/issues/182, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKVQJ4WL5PDFBIXXV6QTLFDY6AT7RAVCNFSM6AAAAABGN7EL7OVHI2DSMVQWIX3LMV43ASLTON2WKOZSGI2TCNBZHEZTCOA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

tsackton commented 2 months ago

This was fixed about 20 minutes ago, with #181. Can you try pulling the new update and running again?

Erythroxylum commented 2 months ago

New error now appearing:

Using workflow specific profile ./profiles/slurm for setting default command line arguments. snpArcher: Using Snakemake 8.10.7 /n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/snparcher_utils/init.py:12: FutureWarning: Downcasting behavior in replace is deprecated and will be removed in a future version. To retain the old behavior, explicitly call result.infer_objects(copy=False). To opt-in to the future behavior, set pd.set_option('future.no_silent_downcasting', True) samples = pd.readtable(config["samples"], sep=",", dtype=str).replace(' ', '', regex=True) /n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/snparcher_utils/init.py:12: FutureWarning: Downcasting behavior in replace is deprecated and will be removed in a future version. To retain the old behavior, explicitly call result.infer_objects(copy=False). To opt-in to the future behavior, set pd.set_option('future.no_silent_downcasting', True) samples = pd.readtable(config["samples"], sep=",", dtype=str).replace(' ', '', regex=True) /n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/snparcher_utils/init.py:12: FutureWarning: Downcasting behavior in replace is deprecated and will be removed in a future version. To retain the old behavior, explicitly call result.infer_objects(copy=False). To opt-in to the future behavior, set pd.set_option('future.no_silent_downcasting', True) samples = pd.readtable(config["samples"], sep=",", dtype=str).replace(' ', '', regex=True) /n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/snparcher_utils/init.py:12: FutureWarning: Downcasting behavior in replace is deprecated and will be removed in a future version. To retain the old behavior, explicitly call result.infer_objects(copy=False). To opt-in to the future behavior, set pd.set_option('future.no_silent_downcasting', True) samples = pd.readtable(config["samples"], sep=",", dtype=str).replace(' ', '', regex=True) /n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/snparcher_utils/init.py:12: FutureWarning: Downcasting behavior in replace is deprecated and will be removed in a future version. To retain the old behavior, explicitly call result.infer_objects(copy=False). To opt-in to the future behavior, set pd.set_option('future.no_silent_downcasting', True) samples = pd.readtable(config["samples"], sep=",", dtype=str).replace(' ', '', regex=True) KeyError in file /n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/rules/common.smk, line 59: nan File "/n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/Snakefile", line 63, in File "/n/holyscratch01/davis_lab/dwhite/panDryas/snpArcher/workflow/rules/common.smk", line 59, in get_output File "/n/home08/dwhite/miniforge3/envs/snparcher/lib/python3.11/site-packages/pandas/core/series.py", line 1121, in getitem File "/n/home08/dwhite/miniforge3/envs/snparcher/lib/python3.11/site-packages/pandas/core/series.py", line 1237, in _get_value File "/n/home08/dwhite/miniforge3/envs/snparcher/lib/python3.11/site-packages/pandas/core/indexes/multi.py", line 3040, in get_loc File "/n/home08/dwhite/miniforge3/envs/snparcher/lib/python3.11/site-packages/pandas/core/indexes/multi.py", line 3418, in _get_level_indexer

cademirch commented 2 months ago

Hmm. Can you share your sample sheet?

Erythroxylum commented 2 months ago

samplesheet_panDryas-s391v3latlong.csv Hi Cade, I chopped off the back half of the sample names after the "-", and it is now running with the modified sample sheet without that error. The original samplesheet is attached here. Which characters might have caused the problem?

cademirch commented 1 month ago

I think the issue here are the empty rows at the bottom of the csv:

Screenshot 2024-04-19 at 11 56 13 AM