Skip to content
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 7 additions & 4 deletions rules/common.smk
Original file line number Diff line number Diff line change
@@ -1,20 +1,23 @@
import pandas as pd
from peppy import Project
from snakemake.utils import validate
from snakemake.utils import min_version

min_version("5.7.1")

report: "../report/workflow.rst"

p = Project(cfg="prjcfg.yaml", sample_table_index="sample",
subsample_table_index=["sample", "unit"])

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sample_table_index and subsample_table_index arguments could be skipped if snakemake followed peppy defaults:

  • "sample_name" for sample_table index colnames
  • ["sample_name", "subsample_name"] for subsample_table index colnames

###### Config file and sample sheets #####
configfile: "config.yaml"
configfile: p.config.snake_config
validate(config, schema="../schemas/config.schema.yaml")

samples = pd.read_table(config["samples"]).set_index("sample", drop=False)
samples = p.sample_table
validate(samples, schema="../schemas/samples.schema.yaml")

units = pd.read_table(config["units"], dtype=str).set_index(["sample", "unit"], drop=False)
units.index = units.index.set_levels([i.astype(str) for i in units.index.levels]) # enforce str in index
units = p.subsample_table
validate(units, schema="../schemas/units.schema.yaml")


Expand Down