DOI: 10.5061/dryad.dbrv15fch
title: Data from: Developmental behavioural plasticity and DNA methylation patterns in response to predation stress in Trinidadian guppies

description: Early-life experiences can predict the environments experienced later in
 life, giving individuals an opportunity to develop adaptive behaviour
 appropriate to a likely future environment. Epigenetic mechanisms such as
 DNA methylation (DNAm) have been implicated in developmental behavioural
 plasticity, however, studies investigating this possibility are limited in
 taxonomic breadth and ecological relevance. We investigated the impact of
 early-life exposure to predation stress on behaviour and DNAm in the
 brains of Trinidadian guppies (Poecilia reticulata). We exposed guppies
 throughout development to either alarm cue (conspecific skin extract),
 inducing predation stress, or a control cue (water) for eight weeks and
 then raised them to adulthood under identical conditions. We then
 conducted two behavioural assays, an open-field and a grouping test,
 before performing whole-genome bisulfite sequencing on whole brains.
 Guppies exposed to alarm cue during development exhibited increased
 grouping (shoaling) in adulthood compared to those exposed to the control
 treatment, but there were no detectable impacts on activity, boldness, or
 exploratory behaviour. We also identified stable shifts in brain DNAm in
 response to developmental alarm cue exposure in genes involved in
 behavioural regulation. Some differentially methylated sites were
 significantly associated with shoaling propensity in both males and
 females. Additionally, males and females differed in the magnitude of DNAm
 responses and the genes impacted, suggesting distinct roles for DNAm
 between the sexes. This study shows how early-life predation stress can
 induce behavioural changes in adulthood and that shifts in neural DNAm
 could be an underlying mechanism responsible for these changes.
description: Juvenile guppies were exposed to either alarm cue or control cue
 throughout development three times a week for eight weeks. After a 22-week
 period without exposure to cue guppies went through behavioural
 assays. Behavioural assays were carried out between
 9:00 and 17:00 from May to September 2021. Fish were not fed on the day of
 behavioural assays. Arena tanks were 20 L rectangular glass tanks with the
 sides covered in white corrugated plastic sheets to prevent reflections.
 We filled tanks with fresh conditioned and heated (25 +/-
 1<sup>o</sup>C) water to 6 cm of depth and loosely scattered
 light-coloured gravel along the bottom. For each assay, fish were allowed
 to habituate in the arena tank for three minutes in a transparent cylinder
 (diameter = 6 cm) placed at the center of the tank. We then slowly lifted
 the cylinder to release the fish and begin the assay. The experimenter hid
 behind a barrier for the duration of the assay. The assays lasted for five
 minutes and were recorded using a 1080P HD Model N5 webcam (HDZIYU,
 Shenzhen, China) positioned 60 cm above the tank. In the modified open
 field test, a 10 cm x 10 cm artificial lawn aquarium plant that fish could
 hide in was placed in one corner of the tank (Supplemental Figure 1). For
 five minutes, the fish was allowed to explore the tank or hide in the
 plant shelter. We used EthoVision XT v11.5 to quantify distance travelled
 (cm), time spent in the shelter (s), time spent in outer edge of tank
 (within the outer squares) (s), time spent moving (s), and time spent
 frozen (s). The last two measurements were only recorded while the fish
 was not in the shelter. Additionally, a virtual 4 x 8 grid was overlayed
 onto the arena video and we extracted the amount of time a fish spent
 within each unique square. A fish had to spend at least three seconds
 within a square for it to count as “explored”. ”. Immediately afterwards,
 we ran the shoaling test. Two identical glass cylinders with a 9 cm
 diameter were placed on each side of the tank - one empty, and the other
 containing a shoal of four, unfamiliar adult females from the Paria
 population. The fish was then allowed to move around the tank monitored
 for five minutes. The side of the tank that contained the shoal container
 was alternated between every assay to control for any effect of tank side.
 One observer blind to cue treatment used BORIS v7.12.2 to record time
 spent within four body lengths with each container (s). Data was cleaned
 to ensure labels match across datasheets and to add on data regarding time
 of behavioural assay. Immediately following behavioural
 assays, we euthanized fish by immersion in ice water. Within three
 minutes, we measured fish mass and length and dissected out brains for
 whole genome bisulfite sequencing (data stored on SRA). 
description: # Developmental behavioural plasticity and DNA methylation patterns in
 response to predation stress in Trinidadian guppies
 [https://doi.org/10.5061/dryad.dbrv15fch](https://doi.org/10.5061/dryad.dbrv15fch) ## Description of the data and file structure Data and code associated with paper: Developmental behavioural plasticity and DNA methylation patterns in response to predation stress in Trinidadian guppies Experiment Summary: Juvenile guppies were exposed to either alarm cue or control cue throughout development three times a week for eight weeks. After a 22-week period without exposure to cue guppies went through behavioural assays (open field and shoaling). Immediately following behavioural assays, we dissected out brains for whole genome bisulfite sequencing .  File structure: Clean and raw behavioural and weight data files are provided within the data.zip file. Sequencing data are stored on SRA (BioProject ID: PRJNA1220133). Analysis scripts are provided with separate folders for each analysis type (01_behavioural_analysis and 02_methylation_analysis). Within each folder, each script should be run in order of the numbering.  All variables and abbreviations are defined below. Missing data = NA.  All required packages and functions are listed at the top of each script.  ### Files and variables #### File: data.zip **Description:**  zip file including all raw and clean datasets. Raw data are included so that it is clear how clean data was generated (using the data cleaning scripts), however all analysis scripts are run on clean data only. Clean datasets are described below. #### File: clean\_size\_gupEpi\_2024.csv **Description:** Clean data sheet of fish size data ##### Variables * ID: fish identification number * weight_g: weight in grams * sl_cm: standard length in centimetres * tl_cm: total length in centimetres * tank: which home tank was the fish stored in during cue exposures * cue: which cue was the fish exposed to (AC: alarm cue, C: control cue) #### File: clean\_shoaling\_gupEpi\_2024.csv **Description:** Clean data sheet of shoaling data ##### Variables * ID: fish identification number * cue: which cue was the fish exposed to (AC: alarm cue, C: control cue) * sex: what sex the fish was (F: female, M: male) * tank: which home tank was the fish stored in during cue exposures * shoal_side: which size of the tank was the shoal on (L: left, R: right) * int_L_s: time spent interacting with the container on the left side (seconds) * int_L_lat_s: latency to interact with the container on the left side (seconds) * int_R_s: time spent interacting with the container on the right side (seconds) * int_R_lat_s: latency to interact with the container on the right side (seconds) * tight_L_s: time spent tight shoaling with the container on the left side (seconds) * tight_L_lat_s: latency to tight shoal with the container on the left side (seconds) * tight_R_s: time spent tight shoaling with the container on the right side (seconds) * tight_r_lat_s: latency to tight shoal with the container on the right side (seconds) * lse_L_s: time spent loose shoaling with the container on the left side (seconds) * lse_L_lat_s: latency to loose shoal with the container on the left side (seconds) * lse_R_s: time spent loose shoaling with the container on the right side (seconds) * lse_R_lat_s: latency to loose shoal with the container on the right side (seconds) * int_shoal_s: time spent interacting with container containing shoal (seconds) * int_shoal_lat_s: latency to interact with container containing shoal (seconds) * int_emp_s: time spent interacting with empty container (seconds) * int_emp_lat_s: latency to interact with empty container (seconds) * tight_shoal_s: time spent tight shoaling with container containing shoal (seconds) * tight_shoal_lat_s: latency to tight shoal with container containing shoal (seconds) * tight_emp_s: time spent tight shoaling with empty container (seconds) * tight_emp_lat_s: latency to tight shoal with empty container (seconds) * lse_shoal_s: time spent loose shoaling with container containing shoal (seconds) * lse_shoal_lat_s: latency to loose shoal with container containing shoal (seconds) * lse_emp_s: time spent loose shoaling with empty container (seconds) * lse_emp_lat_s: latency to loose shoal with empty container (seconds) * time.x: time of day for shoaling assay (AM: morning, PM: afternoon) * time.y: time of day for open field assay (AM: morning, PM: afternoon) #### File: clean\_openfield\_gupEpi\_2024.csv **Description:** Clean data sheet of open field data ##### Variables * ID: fish identification number * cue: which cue was the fish exposed to (AC: alarm cue, C: control cue) * sex: what sex the fish was (F: female, M: male) * tank: which home tank was the fish stored in during cue exposures * dist_cm: total distance fish travelled (centimetres) * veloc_cms: average velocity of fish (centimetres/second) * moving_s: total time spent moving (seconds) * frozen_s: total time spent frozen (seconds) * avgdistshelt_cm: average distance from shelter (centimetres) * maxdistshelt_cm: maximum distance from shelter (centimetres) * time_shelter_s: time spent in shelter (seconds) * lat_shelter_s: latency to enter shelter (seconds) * per_shelt: percent time in shelter (%) * time_outer_s: time spent in squares along outer edge of tank (seconds) * lat_outer_s: latency to enter outer edge (seconds) * per_outer: percent time spent in outer edge (%) * S3_freq: Number of times fish entered square S3 * S4_freq: Number of times fish entered square S4 * S5_freq: Number of times fish entered square S5 * S6_freq: Number of times fish entered square S6 * S7_freq: Number of times fish entered square S7 * S8_freq: Number of times fish entered square S8 * S11_freq: Number of times fish entered square S11 * S12_freq: Number of times fish entered square S12 * S13_freq: Number of times fish entered square S13 * S14_freq: Number of times fish entered square S14 * S15_freq: Number of times fish entered square S15 * S16_freq: Number of times fish entered square S16 * S17_freq: Number of times fish entered square S17 * S18_freq: Number of times fish entered square S18 * S19_freq: Number of times fish entered square S19 * S20_freq: Number of times fish entered square S20 * S21_freq: Number of times fish entered square S21 * S22_freq: Number of times fish entered square S22 * S23_freq: Number of times fish entered square S23 * S24_freq: Number of times fish entered square S24 * S25_freq: Number of times fish entered square S25 * S26_freq: Number of times fish entered square S26 * S27_freq: Number of times fish entered square S27 * S28_freq: Number of times fish entered square S28 * S29_freq: Number of times fish entered square S29 * S30_freq: Number of times fish entered square S30 * S31_freq: Number of times fish entered square S31 * S32_freq: Number of times fish entered square S32 * S3_freq_3min: Number of times fish entered square S3 within first 3 minutes * S4_freq_3min: Number of times fish entered square S4 within first 3 minutes * S5_freq_3min: Number of times fish entered square S5 within first 3 minutes * S6_freq_3min: Number of times fish entered square S6 within first 3 minutes * S7_freq_3min: Number of times fish entered square S7 within first 3 minutes * S8_freq_3min: Number of times fish entered square S8 within first 3 minutes * S11_freq_3min: Number of times fish entered square S11 within first 3 minutes * S12_freq_3min: Number of times fish entered square S12 within first 3 minutes * S13_freq_3min: Number of times fish entered square S13 within first 3 minutes * S14_freq_3min: Number of times fish entered square S14 within first 3 minutes * S15_freq_3min: Number of times fish entered square S15 within first 3 minutes * S16_freq_3min: Number of times fish entered square S16 within first 3 minutes * S17_freq_3min: Number of times fish entered square S17 within first 3 minutes * S18_freq_3min: Number of times fish entered square S18 within first 3 minutes * S19_freq_3min: Number of times fish entered square S19 within first 3 minutes * S20_freq_3min: Number of times fish entered square S20 within first 3 minutes * S21_freq_3min: Number of times fish entered square S21 within first 3 minutes * S22_freq_3min: Number of times fish entered square S22 within first 3 minutes * S23_freq_3min: Number of times fish entered square S23 within first 3 minutes * S24_freq_3min: Number of times fish entered square S24 within first 3 minutes * S25_freq_3min: Number of times fish entered square S25 within first 3 minutes * S26_freq_3min: Number of times fish entered square S26 within first 3 minutes * S27_freq_3min: Number of times fish entered square S27 within first 3 minutes * S28_freq_3min: Number of times fish entered square S28 within first 3 minutes * S29_freq_3min: Number of times fish entered square S29 within first 3 minutes * S30_freq_3min: Number of times fish entered square S30 within first 3 minutes * S31_freq_3min: Number of times fish entered square S31 within first 3 minutes * S32_freq_3min: Number of times fish entered square S32 within first 3 minutes * S3_cumDur: Cumulative duration of time (seconds) fish is in square S3 * S4_cumDur: Cumulative duration of time (seconds) fish is in square S4 * S5_cumDur: Cumulative duration of time (seconds) fish is in square S5 * S6_cumDur: Cumulative duration of time (seconds) fish is in square S6 * S7_cumDur: Cumulative duration of time (seconds) fish is in square S7 * S8_cumDur: Cumulative duration of time (seconds) fish is in square S8 * S11_cumDur: Cumulative duration of time (seconds) fish is in square S11 * S12_cumDur: Cumulative duration of time (seconds) fish is in square S12 * S13_cumDur: Cumulative duration of time (seconds) fish is in square S13 * S14_cumDur: Cumulative duration of time (seconds) fish is in square S14 * S15_cumDur: Cumulative duration of time (seconds) fish is in square S15 * S16_cumDur: Cumulative duration of time (seconds) fish is in square S16 * S17_cumDur: Cumulative duration of time (seconds) fish is in square S17 * S18_cumDur: Cumulative duration of time (seconds) fish is in square S18 * S19_cumDur: Cumulative duration of time (seconds) fish is in square S19 * S20_cumDur: Cumulative duration of time (seconds) fish is in square S20 * S21_cumDur: Cumulative duration of time (seconds) fish is in square S21 * S22_cumDur: Cumulative duration of time (seconds) fish is in square S22 * S23_cumDur: Cumulative duration of time (seconds) fish is in square S23 * S24_cumDur: Cumulative duration of time (seconds) fish is in square S24 * S25_cumDur: Cumulative duration of time (seconds) fish is in square S25 * S26_cumDur: Cumulative duration of time (seconds) fish is in square S26 * S27_cumDur: Cumulative duration of time (seconds) fish is in square S27 * S28_cumDur: Cumulative duration of time (seconds) fish is in square S28 * S29_cumDur: Cumulative duration of time (seconds) fish is in square S29 * S30_cumDur: Cumulative duration of time (seconds) fish is in square S30 * S31_cumDur: Cumulative duration of time (seconds) fish is in square S31 * S32_cumDur: Cumulative duration of time (seconds) fish is in square S32 * time: time of day for open field assay (AM: morning, PM: afternoon) ## Code/software All required packages and functions are listed at the top of each script.  \#Setup 1\. Download project repository from Github or Dryad 2\. Download data folders: \- Behavioural data: from Github or Dryad \- Sequencing data: from SRA (BioProject ID: PRJNA1220133) \#Code Runing All code for analysis is provided in the Github repository or in scripts.zip file on Dryad. Each folder contains all scripts for a specific type of analysis (01_behavioural_analysis and 02_methylation_analysis) and the files within the folder should be run in order of numbering. Files with a and b lettering represent code paired with its slurm submission file. Note that any code with this pairing was written to be run on Compute Canada HPC system and may need to be adapted to your needs if you do not have access. All required software is commented at top of each script. Uncomment and run install lines if required. Analysis was originally run on R v4.3.2. The nf-core/methylseq pipeline v1.6.1 was used to process sequencing reads. Other details on versions of software used can be found in manuscript. Both raw and clean behavioural data is included, however, analysis scripts run on clean behavioural data only. Raw data is included so that you can see how data cleaning was done (using the data cleaning script) but is not required for analysis.  ## Access information Other publicly accessible locations of the data: * Sequencing data: SRA BioProject ID: PRJNA1220133