DOI: 10.5281/zenodo.17256047
title: Combined physical and pharmacological anabolic osteoporosis therapies increase bone response and mechanoregulation in female mice

description: Description

Config-driven R scripts to reproduce the vertebra treatment analyses across static/dynamic morphometry, strength, mechanoregulation, mechanostat, and modeling. Paths, parameters, and plotting are centralized in code/project_config.R and shared helpers.

Prerequisites:

- R (>= 4.x recommended)- Packages used by different scripts (install as needed):  - Hmisc, nlme, gmodels, dplyr, stats, ggpubr  - emmeans, lme4, lmerTest  - drc (for conditional probability curve fits)

Please find more information in the README.md file regarding running the scripts.

Data layout:



Layer 0 (raw microCT results)



data/results_layer0_microCT/ per-treatment folders and per-animal files



Layer 1 (inputs for R scripts)



data/results_layer1_morphometry/



data_StaticMorphometry.csv

data_DynamicMorphometry.csv

data_MechanicalProperties.csv

data_FQR.csv

data_MechanostatParameters.csv

data_VolumeModeling20to24weeks.csv



data/results_layer1_mechanoregulation/: per-interval CSVs used by conditional plots



Layer 2 (outputs from R scripts)



data/results_layer2_outputsR/



CSV summaries (e.g., autostatic_means_all.csv, autodynamic_means_all.csv, automechanostat_means_all.csv, autocoeff_means.csv, autostresscorr_means_all.csv, etc.)

img/ subfolder with figures exported by dat_plot() helpers






All paths are configured via code/project_config.R. Most scripts write CSVs and figures under the layer-2 outputs folder (see below). You can run scripts independently; they only depend on the layer-1 CSV inputs and the shared config/helpers.

Script index and purposes:

Core helpers and config:



code/project_config.R — Central paths, inputs, color palettes, and parameter lists. Provides small utilities to ensure directories and load helpers.

code/helper_functions.R — Shared plotting (dat_plot), table builders, p-value helpers, curve-fitting routines for conditional probabilities.


Static morphometry (layer-1 input: data_StaticMorphometry.csv):



1_mainStatics.R — Static morphometry analysis across all treatments and groups; exports plots and CSV summaries.

1_mainStatics-vehicles.R — Vehicles-only static morphometry.

1_mainStatics-syn.R — Static morphometry synergy contrasts.


Dynamic morphometry (layer-1 input: data_DynamicMorphometry.csv):



2_mainDynamics.R — Dynamic morphometry analysis (formation/resorption rates and related metrics).

2_mainDynamic-vehicles.R — Vehicles-only dynamic morphometry.

2_mainDynamics-syn.R — Dynamic morphometry synergy contrasts.


Strength (layer-1 input: data_MechanicalProperties.csv):



3_mainStrength.R — Strength-related endpoints (e.g., stiffness/strength proxies).

3_mainStrength-syn.R — Strength synergy analysis.


Vehicle stress correlation:



4_mainVehStressCorr.R — Vehicle-only stress correlation analyses; summary table and plots.


F-Q-R endpoints (layer-1 input: data_FQR.csv):



5_mainFQR.R — Formation, quiescence, resorption endpoints across groups/treatments.

5_mainFQR-syn.R — FQR synergy analysis.


Conditional mechanoregulation (uses layer-0/1 per-animal mechanoregulation CSVs):



6_mainCoef.R — Aggregates conditional probability fit parameters (formation/resorption) and exports summary CSVs.

6_mainConditionalPlots.R — Builds per-group fitted curves (100 bins, plotted at 40) with and without quiescence; exports figures and per-interval fit-parameter tables for veh and tx.

6_mainCoef-syn.R — Synergy contrasts for conditional parameters.

6__makeTableCondProb_and_PerAnimal_Plots.R — Generates summary tables and per-animal plots for conditional mechanoregulation.


Strength correlations:



7_strengthCorrelations.R — Correlations between key strength outcomes and morphometry.


Mechanostat (layer-1 input: data_MechanostatParameters.csv):



8_mainMechanostat.R — Mechanostat parameters with ANOVA/Tukey across loading/treatment groups; pth enforced as `pth` label; writes CSV summaries and figures.

8_mainMechanostat-syn.R — Synergy contrasts for mechanostat parameters.


Modeling (layer-1 input: data_VolumeModeling20to24weeks.csv):



9_mainModeling.R — Volume modeling endpoints; synthesizes `week = "23"` internally for table helpers; exports plots and CSV.

9_mainModeling-syn.R — Synergy contrasts for modeling endpoints.


Outputs:

All main scripts write to:



CSVs: data/results_layer2_outputsR/

Figures: data/results_layer2_outputsR/img/


Output filenames mirror the established naming (e.g., autostatic_means_all.csv, autodynamic_means_all.csv, automechanostat_means_all.csv, autocoeff_means.csv, etc.).

Acknowledgements

This repository accompanies the analysis from the manuscript: "Combined physical and pharmacological anabolic osteoporosis therapies synergistically increase bone response and local mechanoregulation".

Friederike A. Schulte (1), Francisco C. Marques (1), Julia K. Griesbach (1), Claudia Weigt (1), Marcella von Salis-Soglio (1), Floor M. Lambers (1), Clemens Kreutz (2), Michaela Kneissel (2), Peter J. Richards (2, 3), Gisela A. Kuhn (1), Ralph Müller (1)

1) Institute for Biomechanics, ETH Zurich; Zurich, Switzerland.     

2) Musculoskeletal Disease Area, Novartis Institutes for Biomedical Research; Basel, Switzerland.     

3) Bone and Stem Cell Research Group, CABMM, University of Zurich; Zurich, Switzerland.