Data and code from: Rapid evolution of body size in response to consistent natural selection in a wild lizard
Data files
Sep 22, 2026 version files 285.46 MB
-
adult_svl_mf_prior1.rds
190.89 MB
-
female_adult_svl_ARS_prior1.rds
3.79 MB
-
female_juvenile_adult_svl_prior1.rds
1.12 MB
-
female_svl_long_adult_repeated_fitness_genetic_groups.csv
725.15 KB
-
male_adult_svl_ARS_prior1.rds
2.49 MB
-
male_juvenile_adult_svl_prior1.rds
1.82 MB
-
male_svl_long_adult_repeated_fitness_genetic_groups.csv
469.18 KB
-
model_female_adult_svl_overwinter_survival_prior1.rds
19.32 MB
-
model_female_juvenile_svl_overwinter_survival_prior1.rds
8.15 MB
-
model_male_adult_svl_overwinter_survival_prior1.rds
16.52 MB
-
model_male_juvenile_svl_overwinter_survival_prior1.rds
38.03 MB
-
Pedigree_phantom_parents.csv
343.55 KB
-
Pedigree.csv
260.17 KB
-
Phenotypic_data.csv
1.43 MB
-
R_code_all_analysis.R
56.19 KB
-
R_code_all_animal_models.R
26.27 KB
-
README.md
22.03 KB
Sep 25, 2026 version files 285.48 MB
-
adult_svl_mf_prior1.rds
190.89 MB
-
female_adult_svl_ARS_prior1.rds
3.79 MB
-
female_juvenile_adult_svl_prior1.rds
1.12 MB
-
female_svl_long_adult_repeated_fitness_genetic_groups.csv
725.15 KB
-
locus_genotyping_summary.csv
15.97 KB
-
male_adult_svl_ARS_prior1.rds
2.49 MB
-
male_juvenile_adult_svl_prior1.rds
1.82 MB
-
male_svl_long_adult_repeated_fitness_genetic_groups.csv
469.18 KB
-
model_female_adult_svl_overwinter_survival_prior1.rds
19.32 MB
-
model_female_juvenile_svl_overwinter_survival_prior1.rds
8.15 MB
-
model_male_adult_svl_overwinter_survival_prior1.rds
16.52 MB
-
model_male_juvenile_svl_overwinter_survival_prior1.rds
38.03 MB
-
Pedigree_phantom_parents.csv
343.55 KB
-
Pedigree.csv
260.17 KB
-
Phenotypic_data.csv
1.43 MB
-
R_code_all_analysis.R
56.19 KB
-
R_code_all_animal_models.R
26.27 KB
-
README.md
23.54 KB
Abstract
Although directional selection and additive genetic variance are frequently detected in wild populations, evolutionary responses are often weak or absent, giving rise to a “paradox of stasis.” To explore the relationship between selection and evolution, we used a pedigreed wild population of lizards (Anolis sagrei) to quantify natural selection, estimate additive genetic (co)variances, and track phenotypic and genetic change in adult body size while addressing several factors that could lead to evolutionary stasis. Selection via adult reproductive success consistently favored larger body size in both sexes and was stronger in males. Body size was heritable and genetically correlated with adult reproductive success in both sexes, indicating that selection acted on underlying additive genetic variance. Across five annual cohorts, mean phenotypic values and breeding values for body size increased in both sexes, exceeding expectations under genetic drift. This rapid evolutionary response was not obscured by several processes commonly invoked to explain stasis. For example, accounting for phenotypic skew strengthened expected responses, and prior viability selection on juveniles did not phenotypically or genetically oppose selection on adult body size. Our results show that rapid evolutionary change is detectable in the wild when directional selection is consistent, acts on additive genetic variance, and is not genetically opposed by early-life viability selection.
Dataset DOI: 10.5061/dryad.k6djh9wph
Description of the data and file structure
These data were collected as part of a long-term field study of a pedigreed population of brown anole lizards (Anolis sagrei) and were used in the analyses presented in the associated manuscript, “Rapid evolution of body size in response to consistent natural selection in a wild lizard.” The dataset includes longitudinal capture and measurement records, adult snout–vent length, survival, reproductive success, pedigree information, pedigree inbreeding coefficients, and genetic-group assignments. These data were used to quantify phenotypic and genetic variation in adult body size and fitness, estimate selection on body size, and test for evolutionary change in body size using Bayesian quantitative-genetic animal models. The repository also contains the pedigree used to calculate reproductive success and construct the additive-genetic relationship matrix, datasets formatted for specific repeated-measures analyses, saved MCMCglmm model output, and R code used to reproduce the analyses reported in the manuscript.
Files and variables
File: R_code_all_analysis.R
Description: The R code used for the analyses presented in the manuscript, including selection analysis, posterior and uncertainty summaries, breeding-value analysis, simulations of genetic drift, and related quantitative genetic calculations. The script is organized as separate analytic blocks rather than as a single executable file.
File: R_code_all_animal_models.R
Description: The R code used to fit the Bayesian quantitative-genetic animal models presented in the manuscript, including the model formulas, priors, pedigree processing, fuzzy genetic group calculations, MCMCglmm settings, and launching runs as parallel chains. The script is organized into discrete models that can be run independently.
File: male_svl_long_adult_repeated_fitness_genetic_groups.csv
Description: Individual-level phenotypic, reproductive-success, pedigree-inbreeding, and genetic-group data from the long-term field study. The dataset is in long format; each row represents one individual, one trait, and one time point. This dataset is designed to fit the repeated measures animal model described in the supplementary material.
Variables
- id: The unique identification number of a lizard.
- animal: The unique identification number of a lizard.
- ID: The unique identification number of a lizard.
- trait_time: The concatenated values of the trait and time point that the values for that row pertain to. Trait can be either SVL or tot_off; for SVL, the time point can take one of four values: 1_1, 1_2, 1_3, or 1_4. For tot_off, the time point is a single value, adult.
- Cohort: The birth year cohort the individual belongs too.
- time: the time points the trait value is from; for SVL the times are census periods in their first adult year, 1_1 through 1_4; for tot_off this takes one value, 1_1.
- variable: The trait the value in the value column is for.
- value: The measured value of the respective trait at the respective time point. For SVL (snout-vent length), this is mm, and for tot_off this is the number of genetically assigned offspring across the adult lifespan.
- type: details if the measure is repeated (r) or single (s)
- family: details the distribution used for that row in the MCMCglmm model. Family can be one of two values: gaussian or poisson.
- gg_base2014: Proportional membership in the baseline (2014) genetic group.
- gg_2015: Proportional membership in the 2015 genetic group.
- gg_2016: Proportional membership in the 2016 genetic group.
- gg_2017: Proportional membership in the 2017 genetic group.
- gg_2018: Proportional membership in the 2018 genetic group.
- inb: Pedigree-based inbreeding coefficient for the individual.
File: Pedigree.csv
Description: Pedigree used to calculate reproductive success, pedigree inbreeding coefficients, and the additive-genetic relationship matrix for the animal models. The pedigree was generated through parentage assignment. Each row represents an observed lizard. NA indicates unassigned parentage.
Variables
- id: Unique identifier for an individual.
- dam: Identifier of the individual's assigned dam.
- sire: Identifier of the individual's assigned sire.
- Cohort: Birth-year cohort of the observed individual, given as calendar year.
File: Pedigree_phantom_parents.csv
Description: Pedigree used to calculate reproductive success, pedigree inbreeding coefficients, and the additive-genetic relationship matrix for the animal models. The pedigree was generated through parentage assignment. Each row represents either an observed lizard or a phantom parent used to define fuzzy genetic-group membership.
Variables
- id: Unique identifier for an individual. For observed lizards, this is the individual's identification number. Values beginning with pd_ identify phantom dams, and values beginning with
ps_identify phantom sires. Phantom parents are not observed individuals; they were included in the pedigree to generate fuzzy genetic-group membership coefficients. NA indicates a missing record. - dam: Identifier of the individual's assigned dam. For observed individuals without an assigned dam, this field contains a phantom-dam identifier (pd_...).
- sire: Identifier of the individual's assigned sire. For observed individuals without an assigned sire, this field contains a phantom-sire identifier (ps_...).
- Cohort: Birth-year cohort of the observed individual, given as calendar year.
File: female_svl_long_adult_repeated_fitness_genetic_groups.csv
Description: Individual-level phenotypic, reproductive-success, pedigree-inbreeding, and genetic-group data from the long-term field study. The dataset is in long format; each row represents one individual, one trait, and one time point. This dataset is designed to fit the repeated measures animal model described in the supplementary material.
Variables
- id: The unique identification number of a lizard.
- animal: The unique identification number of a lizard.
- ID: The unique identification number of a lizard.
- trait_time: The concatenated values of the trait and time point the values for that row pertain too. Trait can be either SVL or tot_off; for SVL, the time point can take one of four values: 1_1, 1_2, 1_3, or 1_4. For tot_off, the time point is a single value, adult.
- Cohort: The birth year cohort the individual belongs to.
- time: the time points the trait value is from; for SVL the times are census periods in their first adult year, 1_1 through 1_4; for tot_off this takes ones value, 1_1.
- variable: The trait the value in the value column is for.
- value: The measured value of the respective trait at the respective time point. For SVL (snout-vent length), this is mm, and for tot_off, this is the number of genetically assigned offspring across the adult lifespan.
- type: details if the measure is repeated (r) or single (s)
- family: details the distribution used for that row in the MCMCglmm model. Family can be one of two values: gaussian or poisson.
- gg_base2014: Proportional membership in the baseline (2014) genetic group.
- gg_2015: Proportional membership in the 2015 genetic group.
- gg_2016: Proportional membership in the 2016 genetic group.
- gg_2017: Proportional membership in the 2017 genetic group.
- gg_2018: Proportional membership in the 2018 genetic group.
- inb: Pedigree-based inbreeding coefficient for the individual.
File: Phenotypic_data.csv
Description: Individual-level phenotypic, encounter, survival, reproductive-success, pedigree-inbreeding, and genetic-group data from the long-term field study. The dataset is in wide format; each row represents one individual and values from distinct census events are given in columns. Records are aligned relative to each individual's hatch year, beginning with census 0_3; e.g., repeated encounter, survival, body-mass, and snout–vent length variables are indexed by year of life relative to the individual's cohort and by seasonal census period. There are four census trips in each year (April, May, July, October).
Variables with names of the form X_A_B_period identify the type of record (X), year relative to the individual's hatch cohort (A), and census period (B).
- 0 in the first numeric position indicates the hatch year.
- 1 indicates the first adult year (the calendar year following hatching).
- 2, 3, etc. indicate subsequent years of life.
- Census period 1 = spring.
- Census period 2 = early summer (esumm).
- Census period 3 = late summer (lsumm).
- Census period 4 = fall.
For example, E_1_1_spring is the encounter record for the spring census of the individual's first adult year, whereas SVL_0_4_fall is snout–vent length measured during the fall census of the hatch year.
Missing values
NA indicates that a value could not be measured or, for survival variables, could not be inferred from the available capture history.
For Mass_ and SVL_ variables, NA means that the individual does not have a body-mass or snout–vent length measurement for that census period.
Encounter (E_) and survival (S_) variables should not be interpreted in the same way. Encounter variables record whether an individual was actually encountered during a census. Survival variables incorporate information from the complete capture history. Survival status is therefore back-filled as 1 between census periods for which the animal is known to have been alive. For example, an animal missed during a census but captured at a later census is known with certainty to have been alive at the intervening census and is coded 1 for survival even though its encounter value at that census is 0.
Before an individual's first point of known survival, survival status can be NA when there is insufficient information to determine whether it was alive. This occurs particularly for hatch-year (0_3 or 0_4) census periods for individuals first encountered as adults. In contrast, if an individual was not encountered at the first adult spring census (1_1) but was subsequently encountered during that year, its S_1_1_spring value is 1, because the later encounter establishes that it was alive at that time.
Body-mass variables (Mass_) give body mass measured at the specified census, in grams. NA indicates that no mass measurement was available for that individual at that census.
Snout–vent length variables (SVL_) give body size measured as snout–vent length (SVL).
Genetic-group and pedigree variables
The gg_ variables are fuzzy genetic-group membership coefficients used in the quantitative-genetic animal models. Each value represents the proportion of an individual's pedigree ancestry assigned to the corresponding genetic group. An individual may therefore have partial membership in multiple genetic groups, and the gg_ coefficients for each individual sum to 1. These genetic groups are associated with the phantom-parent structure included in the accompanying pedigree and were used to account for differences in genetic origin among pedigree founders (NA for parents in the pedigree).
Variables
- ID: The unique identification number of a lizard.
- Sex: Sex of the individual (F = female; M = male)
- Cohort: The hatch year of the individual
- E_0_3_lsumm: Encounter record for the late summer census of an individual's hatch year
- E_0_4_fall: Encounter record for the fall census of an individual's hatch year
- E_1_1_spring: Encounter record for the spring census of an individual's first adult year
- E_1_2_esumm: Encounter record for the early summer census of an individual's first adult year
- E_1_3_lsumm: Encounter record for the late summer census of an individual's first adult year
- E_1_4_fall: Encounter record for the fall census of an individual's first adult year
- E_2_1_spring through E_2_4_fall: Encounter records for the four census periods of the second adult year.
- E_3_1_spring through E_3_4_fall: Encounter records for the four census periods of the third adult year.
- E_4_1_spring through E_4_4_fall: Encounter records for the four census periods of the fourth adult year.
- E_5_1_spring: Encounter record for the spring census of an individual's fifth year. This was the last census at which any individual was known to be encountered.
- Mass_0_3_lsumm: Body mass (g) during the late summer census of the hatch year
- Mass_0_4_fall: Body mass (g) during the fall census of the hatch year
- Mass_1_1_spring: Body mass (g) during the spring census of the first adult year
- Mass_1_2_esumm: Body mass (g) during the early summer census of the first adult year
- Mass_1_3_lsumm: Body mass (g) during the late summer census of the first adult year
- Mass_1_4_fall: Body mass (g) during the fall census of the first adult year
- S_0_3_lsumm: Survival status at the late-summer census of the hatch year.
- S_0_4_fall: Survival status at the fall census of the hatch year.
- S_1_1_spring through S_1_4_fall: Survival status across the four census periods of the first adult year.
- S_2_1_spring through S_2_4_fall: Survival status across the four census periods of the second adult year.
- S_3_1_spring through S_3_4_fall: Survival status across the four census periods of the third adult year.
- S_4_1_spring through S_4_4_fall: Survival status across the four census periods of the fourth adult year.
- S_5_1_spring: Survival status at the spring census of the fifth adult year.
- SVL_0_3_lsumm: Snout-vent length (mm) during late summer of the hatch year.
- SVL_0_4_fall: Snout-vent length (mm) during fall of the hatch year.
- SVL_1_1_spring: Snout-vent length (mm) during spring of the first adult year.
- SVL_1_2_esumm: Snout-vent length (mm) during early summer of the first adult year.
- SVL_1_3_lsumm: Snout-vent length (mm) during late summer of the first adult year.
- SVL_1_4_fall: Snout-vent length (mm) during fall of the first adult year.
- max_Age: The maximum age/ year-of-life class reached by an individual based on its capture records
- offspring_count_year_1: The number of genetically assigned offspring produced during an individual's first adult year.
- offspring_count_year_2: The number of genetically assigned offspring produced during an individual's second adult year.
- offspring_count_year_3: The number of genetically assigned offspring produced during an individual's third adult year.
- offspring_count_year_4: The number of genetically assigned offspring produced during an individual's fourth adult year.
- offspring_count_year_5: The number of genetically assigned offspring produced during an individual's fifth adult year.
- total_offspring_production: The total number of genetically assigned offspring produced across an individual's lifespan
- Survival_to_or_offspring_production_in_first_adult_year: Binary indicator of evidence that the individual survived to the first adult breeding year, based either on direct/subsequent survival information or on production of genetically assigned offspring (1 = evidence of survival to or reproduction during the first adult year; 0 = no such evidence).
- gg_base2014: Proportional membership in the baseline (2014) genetic group.
- gg_2015: Proportional membership in the 2015 genetic group.
- gg_2016: Proportional membership in the 2016 genetic group.
- gg_2017: Proportional membership in the 2017 genetic group.
- gg_2018: Proportional membership in the 2018 genetic group.
- gg_2019: Proportional membership in the 2019 genetic group.
- gg_2020: Proportional membership in the 2020 genetic group.
- inb: Pedigree-based inbreeding coefficient for the individual.
- Census_Capture_Mortality: Binary indicator that the individual died as a consequence of capture during a hatch-year late-summer (0_3) or fall (0_4) census (1 = capture-associated mortality; 0 = no capture-associated mortality). Individuals with capture-associated mortality were censored from analyses of subsequent adult survival because their failure to survive was caused by the sampling event rather than naturally occurring mortality.
File: female_juvenile_adult_svl_prior1.rds
Description: Saved MCMCglmm model object for the bivariate Bayesian quantitative-genetic animal model of juvenile snout–vent length (SVL_0_4) and adult snout–vent length (SVL_1_1) in females. The object contains posterior samples of the variance and covariance components for the animal and cohort random effects and the residual, as well as posterior samples of the fixed effects (intercepts only).
File: male_adult_svl_ARS_prior1.rds
Description: Saved MCMCglmm model object for the bivariate Bayesian quantitative-genetic animal model of adult snout–vent length (SVL_1_1) and adult reproductive success (total offspring production of adults) in males. The object contains posterior samples of the variance and covariance components for the animal and cohort random effects and the residual, as well as posterior samples of the fixed effects (intercepts only).
File: female_adult_svl_ARS_prior1.rds
Description: Saved MCMCglmm model object for the bivariate Bayesian quantitative-genetic animal model of adult snout–vent length (SVL_1_1) and adult reproductive success (total offspring production of adults) in females. The object contains posterior samples of the variance and covariance components for the animal and cohort random effects and the residual, as well as posterior samples of the fixed effects (intercepts only).
File: model_female_juvenile_svl_overwinter_survival_prior1.rds
Description: Saved MCMCglmm model object for the bivariate Bayesian quantitative-genetic animal model of juvenile snout–vent length (SVL_0_4) and overwinter survival (S_1_1) in females. The object contains posterior samples of the variance and covariance components for the animal and cohort random effects and the residual, as well as posterior samples of the fixed effects (intercepts only).
File: model_female_adult_svl_overwinter_survival_prior1.rds
Description: Saved MCMCglmm model object for the bivariate Bayesian quantitative-genetic animal model of adult snout–vent length (SVL_1_1) and overwinter survival (S_1_1) in females. The object contains posterior samples of the variance and covariance components for the animal and cohort random effects and the residual, as well as posterior samples of the fixed effects (intercepts only).
File: model_male_adult_svl_overwinter_survival_prior1.rds
Description: Saved MCMCglmm model object for the bivariate Bayesian quantitative-genetic animal model of adult snout–vent length (SVL_1_1) and overwinter survival (S_1_1) in males. The object contains posterior samples of the variance and covariance components for the animal and cohort random effects and the residual, as well as posterior samples of the fixed effects (intercepts only).
File: model_male_juvenile_svl_overwinter_survival_prior1.rds
Description: Saved MCMCglmm model object for the bivariate Bayesian quantitative-genetic animal model of juvenile snout–vent length (SVL_0_4) and overwinter survival (S_1_1) in males. The object contains posterior samples of the variance and covariance components for the animal and cohort random effects and the residual, as well as posterior samples of the fixed effects (intercepts only).
File: male_juvenile_adult_svl_prior1.rds
Description: Saved MCMCglmm model object for the bivariate Bayesian quantitative-genetic animal model of juvenile snout–vent length (SVL_0_4) and adult snout–vent length (SVL_1_1) in males. The object contains posterior samples of the variance and covariance components for the animal and cohort random effects and the residual, as well as posterior samples of the fixed effects (intercepts only).
File: adult_svl_mf_prior1.rds
Description: Saved MCMCglmm model object for the bivariate Bayesian quantitative-genetic animal model of adult snout–vent length (SVL_1_1) in males and females. The object contains posterior samples of the variance and covariance components for the animal and cohort random effects and the residual, as well as posterior samples of the fixed effects (intercepts only). The object also contains posterior individual solutions for the animal random effect used to estimate individual breeding values for adult snout–vent length.
locus_genotyping_summary.csv
Description
This file contains locus-level summary statistics and genotyping quality-control information for the genetic marker panel used in the study. Each row represents one locus. The file contains information for 215 loci, including allele frequencies, genotype completeness, observed and expected heterozygosity, locus-specific genotyping error rates estimated using COLONY and FRANz, and whether the locus was excluded from subsequent analyses.
Columns
- Locus Name: Unique identifier for the genetic locus.
- Minor Allele Frequency: Minor allele frequency at the locus in the genotyped sample.
- Proportion Individuals Missing Genotype: Proportion of individuals for which a genotype was missing at the locus.
- Number Individuals with Genotype: Number of individuals with a non-missing genotype at the locus.
- Heterozygosity Observed: Observed proportion of heterozygous individuals at the locus.
- Heterozygosity Expected: Expected heterozygosity at the locus based on allele frequencies.
- Error rate colony cohort 2015: Locus-specific genotyping error rate estimated using COLONY for the 2015 cohort.
- Error rate colony cohort 2016: Locus-specific genotyping error rate estimated using COLONY for the 2016 cohort.
- Error rate franz: Locus-specific genotyping error rate estimated using FRANz.
- Removed: Indicates whether the locus was excluded during genotyping quality control and omitted from subsequent analyses (Yes= excluded; No = retained).
Code/software
All data files can be viewed using freely available software. The .csv files can be opened in R, a text editor, or any other software capable of reading comma-separated text files. The .rds files are serialized R objects and should be opened in R using readRDS().
All analyses for the manuscript were conducted in R. Bayesian quantitative-genetic animal models were fit using the MCMCglmm package. The submitted .rds files contain saved MCMCglmm model objects.
R scripts used to prepare the analysis datasets, fit the animal models, summarize posterior distributions, calculate derived quantitative-genetic parameters, and generate the analyses presented in the manuscript are included with the submission. The scripts use the accompanying Phenotypic_data.csv, Pedigree_phantom_parents.csv, and long-format repeated-measures datasets as model inputs. Saved .rds model objects are provided so that posterior estimates can be examined and summarized without rerunning the MCMC chains.
Software and package versions used for the final analyses are documented in the submitted R code.
Access information
The provided analysis R code is also available on GitHub at: https://github.com/ty-wittman/Rapid_evolution_body_size_anolis_sagrei
Changes after Sep 22, 2026:
Uploaded the document "locus_genotyping_summary.csv"; no other changes were made.
