Skip to content

Commit e892e6c

Browse files
Merge pull request #46 from SchlossLab/iss-44
Fix seed type & feature importance column
2 parents 8614a23 + 7e793e9 commit e892e6c

File tree

6 files changed

+21
-23
lines changed

6 files changed

+21
-23
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,15 @@ jobs:
99
build:
1010
name: build
1111
runs-on: ubuntu-latest
12-
strategy:
13-
matrix:
14-
python-version: ["3.11"]
1512

1613
steps:
1714
- uses: actions/checkout@v3
1815
with:
1916
persist-credentials: false
2017
fetch-depth: 0
21-
- uses: conda-incubator/setup-miniconda@v2
18+
- uses: conda-incubator/setup-miniconda@v3
2219
with:
2320
python-version: 3.11
24-
miniforge-variant: Mambaforge
2521
miniforge-version: latest
2622
activate-environment: github-actions
2723
environment-file: workflow/envs/github-actions.yml

Dockerfile

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
FROM condaforge/mambaforge:latest
1+
FROM condaforge/miniforge3:latest
22
LABEL io.github.snakemake.containerized="true"
3-
LABEL io.github.snakemake.conda_env_hash="6aa289536136aae2d34bac6dce9ce47d037da888ed09e2c8ada989c90ef10658"
3+
LABEL io.github.snakemake.conda_env_hash="c1edb6a4917211d511a661c54768e671f7f067b1ea473011e8fdcbc485178d2c"
44

5-
# Step 1: Retrieve conda environments
5+
# Step 2: Retrieve conda environments
66

77
# Conda environment:
88
# source: workflow/envs/graphviz.yml
@@ -17,7 +17,7 @@ COPY workflow/envs/graphviz.yml /conda-envs/b42323b0ffd5d034544511c9db1bdead/env
1717

1818
# Conda environment:
1919
# source: workflow/envs/mikropml.yml
20-
# prefix: /conda-envs/3f83a46ff5ea715a12fde6ee46136b0b
20+
# prefix: /conda-envs/e7c23e20e8aab7662ae81be2ad57d998
2121
# name: mikropml
2222
# channels:
2323
# - conda-forge
@@ -30,15 +30,15 @@ COPY workflow/envs/graphviz.yml /conda-envs/b42323b0ffd5d034544511c9db1bdead/env
3030
# - r-future
3131
# - r-future.apply
3232
# - r-import
33-
# - r-mikropml>=1.5.0
33+
# - r-mikropml>=1.6.0
3434
# - r-patchwork
3535
# - r-rmarkdown
3636
# - r-rpart
3737
# - r-purrr
3838
# - r-schtools>=0.4.0
3939
# - r-tidyverse
40-
RUN mkdir -p /conda-envs/3f83a46ff5ea715a12fde6ee46136b0b
41-
COPY workflow/envs/mikropml.yml /conda-envs/3f83a46ff5ea715a12fde6ee46136b0b/environment.yaml
40+
RUN mkdir -p /conda-envs/e7c23e20e8aab7662ae81be2ad57d998
41+
COPY workflow/envs/mikropml.yml /conda-envs/e7c23e20e8aab7662ae81be2ad57d998/environment.yaml
4242

4343
# Conda environment:
4444
# source: workflow/envs/smk.yml
@@ -54,9 +54,9 @@ COPY workflow/envs/mikropml.yml /conda-envs/3f83a46ff5ea715a12fde6ee46136b0b/env
5454
RUN mkdir -p /conda-envs/457b7b75191d44b96e5086432876e333
5555
COPY workflow/envs/smk.yml /conda-envs/457b7b75191d44b96e5086432876e333/environment.yaml
5656

57-
# Step 2: Generate conda environments
57+
# Step 3: Generate conda environments
5858

59-
RUN mamba env create --prefix /conda-envs/b42323b0ffd5d034544511c9db1bdead --file /conda-envs/b42323b0ffd5d034544511c9db1bdead/environment.yaml && \
60-
mamba env create --prefix /conda-envs/3f83a46ff5ea715a12fde6ee46136b0b --file /conda-envs/3f83a46ff5ea715a12fde6ee46136b0b/environment.yaml && \
61-
mamba env create --prefix /conda-envs/457b7b75191d44b96e5086432876e333 --file /conda-envs/457b7b75191d44b96e5086432876e333/environment.yaml && \
62-
mamba clean --all -y
59+
RUN conda env create --prefix /conda-envs/b42323b0ffd5d034544511c9db1bdead --file /conda-envs/b42323b0ffd5d034544511c9db1bdead/environment.yaml && \
60+
conda env create --prefix /conda-envs/e7c23e20e8aab7662ae81be2ad57d998 --file /conda-envs/e7c23e20e8aab7662ae81be2ad57d998/environment.yaml && \
61+
conda env create --prefix /conda-envs/457b7b75191d44b96e5086432876e333 --file /conda-envs/457b7b75191d44b96e5086432876e333/environment.yaml && \
62+
conda clean --all -y

workflow/envs/mikropml.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ dependencies:
1010
- r-future
1111
- r-future.apply
1212
- r-import
13-
- r-mikropml>=1.5.0
13+
- r-mikropml>=1.6.0
1414
- r-patchwork
1515
- r-rmarkdown
1616
- r-rpart

workflow/scripts/find_feature_importance.R

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ feat_imp <- mikropml::get_feature_importance(
3636
seed = seed,
3737
)
3838

39-
wildcards <- schtools::get_wildcards_tbl()
39+
wildcards <- schtools::get_wildcards_tbl() %>%
40+
dplyr::mutate(seed = as.numeric(seed))
4041

4142
readr::write_csv(
4243
feat_imp %>%

workflow/scripts/plot_feature_importance.R

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ feat_df <- readr::read_csv(snakemake@input[["csv"]])
77
top_n <- as.numeric(snakemake@params[["top_n"]])
88

99
top_feats <- feat_df %>%
10-
group_by(method, names) %>%
10+
group_by(method, feat) %>%
1111
summarize(median_diff = median(perf_metric_diff)) %>%
1212
slice_max(order_by = median_diff, n = top_n)
1313

1414
feat_plot <- feat_df %>%
15-
right_join(top_feats, by = c("method", "names")) %>%
16-
mutate(features = factor(names, levels = unique(top_feats$names))) %>%
15+
right_join(top_feats, by = c("method", "feat")) %>%
16+
mutate(features = factor(feat, levels = unique(top_feats$feat))) %>%
1717
ggplot(aes(x = perf_metric_diff, y = features, color = method)) +
1818
geom_boxplot() +
1919
facet_wrap(~method) +

workflow/scripts/train_ml.R

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ ml_results <- mikropml::run_ml(
1818
hyperparameters = hyperparams
1919
)
2020

21-
wildcards <- schtools::get_wildcards_tbl()
21+
wildcards <- schtools::get_wildcards_tbl() %>%
22+
dplyr::mutate(seed = as.numeric(seed))
2223

2324
readr::write_csv(
2425
ml_results$performance %>%

0 commit comments

Comments
 (0)