DOI: 10.5061/dryad.f1vhhmh70
title: Data from: Poleward range shifts of breeding birds in Wisconsin

description: Climate change is causing shifts in the geographic ranges of multiple
 species across the world. Birds are a critical taxon for observing range
 shifts because their high mobility allows them to track shifting climates
 over time and space. Breeding bird atlases are large-scale breeding bird
 surveys that are essential for tracking species’ ranges in response to
 climate change. In this paper, our goal was to analyze Wisconsin’s
 Breeding Bird Atlases (1995­–2000 & 2015–2019) to document changes
 in range size, mean latitude, and range boundary shift of breeding birds.
 Concordant with our predictions, we found that many southerly bird species
 with northern range limits were both expanding in distribution and
 shifting their range boundaries poleward. Contrary to our predictions,
 northerly species with southern range limits in the state were not
 shifting their boundary poleward but demonstrated a northward movement in
 their mean latitudes. Despite the lack of range boundary shift for
 northerly species as a group, 86% of climate-vulnerable boreal species
 demonstrated a shift northward in their overall distribution. The repeated
 signal of bird ranges moving poleward remains a coherent fingerprint of
 the impact of modern climate change on species and ecosystems.
description: This README file was created on 2025-03-15 by Drake Stallworth. Last
 updated: 2025-08-19 Contact Information- Drake Stallworth, University of
 Wisconsin–Madison,
 [drakeystallworth@gmail.com,](mailto:drakeystallworth@gmail.com) ORCID ID:
 0009-0000-6197-9660 #### File: ATLASDATA.xlsx This file contains two
 sheets containing breeding bird atlas data for both atlases. Sheet: ATLAS
 I This file contains Atlas I block data for the 85 species of interest of
 our study. Duplicate blocks have been filtered out of this file.
 COMMON.NAME- The common name of the species ATLAS.BLOCK- The block ID
 where the species was observed throughout the atlasing period
 LATITUDECENTROID- The latitude of the centroid of the block where the
 species was observed Sheet: ATLAS II This file contains Atlas II block
 data for the 85 species of interest of our study. Duplicate blocks have
 been filtered out of this file. COMMON.NAME- The common name of the
 species ATLAS.BLOCK- The block ID where the species was observed
 throughout the atlasing period LATITUDECENTROID- The latitude of the
 centroid of the block where the species was observed #### File:
 ComparableBlockSet.xlsx This file contains the ID and name of blocks used
 in both atlases that were designated as comparable blocks and used in our
 analysis for determining change in range size. A block was considered
 "comparable" if it 1) was a priority block in Atlas II and 2)
 the ratio of the number of breeding species detected in the block in Atlas
 II compared to the number of breeding species detected in Atlas I was
 between 0.75 and 1.25. BLOCK_ID- The identification number of the block
 BLOCK_NAME- The name given to the block FAIR- Whether the block is a
 comparable block or not (this dataset only contains comparable blocks)
 #### File: StatisticalAnalysisFiles.xlsx This file contains 15 sheets that
 were converted to .csv (comma-delimited) files for R Studio. All of the
 values in this file originate from ATLASDATA.xlsx. Sheet: Northerly10GLM
 This sheet contains the boundary shift (difference between the mean bottom
 10 latitudes) and range change observed between Atlas I and Atlas II for
 the northerly species. This dataset was used to form a General Linear
 Model comparing range change with boundary shift. Each row represents one
 species. range- The range change of the species, measured as: log10(# of
 blocks occupied in Atlas II)-log10(# of blocks occupied in Atlas I)
 boundary- The shift in boundary between Atlas I and Atlas II, measured as
 the difference between the mean bottom 10 latitudes for Atlas II and Atlas
 I. Sheet: Southerly10GLM This sheet contains the boundary shift
 (difference between the mean top 10 latitudes) and range change observed
 between Atlas I and Atlas II for the southerly species. This dataset was
 used to form a General Linear Model comparing range change with boundary
 shift. Each row represents one species. range- The range change of the
 species, measured as: log10(# of blocks occupied in Atlas II)-log10(# of
 blocks occupied in Atlas I) boundary- The shift in boundary between Atlas
 I and Atlas II, measured as the difference between the mean top 10
 latitudes for Atlas II and Atlas I. Sheet: Northerly10LatWilcoxon This
 sheet contains the mean of the bottom 10 latitudes (boundaries) for the
 northerly species in Atlas I and Atlas II. This dataset was used to
 conduct a Wilcoxon Signed Rank Sum Test to determine significance of the
 average boundary shift amongst the entire assemblage. Each row represents
 one species. atlas 1- The mean of the bottom 10 latitudes for a species in
 Atlas I atlas 2- The mean of the bottom 10 latitudes for a species in
 Atlas II Sheet: Southerly10LatWilcoxon This sheet contains the mean of the
 top 10 latitudes (boundaries) for the southerly species in Atlas I and
 Atlas II. This dataset was used to conduct a Wilcoxon Signed Rank Sum Test
 to determine significance of the average boundary shift amongst the entire
 assemblage. Each row represents one species. atlas 1- The mean of the top
 10 latitudes for a species in Atlas I atlas 2- The mean of the top 10
 latitudes for a species in Atlas II Sheet: Overall10LatWilcoxon This sheet
 contains the mean of the bottom 10 latitudes for the northerly species
 (boundaries) and the mean of the top 10 latitudes (boundaries) for the
 southerly species in Atlas I and Atlas II. This dataset was used to
 conduct a Wilcoxon Signed Rank Sum Test to determine significance of the
 average boundary shift amongst all species. Each row represents one
 species. Northerly species consists of rows 2-54 and southerly species
 consist of rows 55-86. atlas 1- The mean of the bottom 10 (for northerly
 species) and top 10 (for southerly species) latitudes for a species in
 Atlas I atlas 2- The mean bottom of the 10 (for northerly species) and top
 10 (for southerly species) latitudes for a species in Atlas II Sheet:
 NortherlyMeanLatWilcoxon This sheet contains the mean latitudes for the
 northerly species in Atlas I and Atlas II. This dataset was used to
 conduct a Wilcoxon Signed Rank Sum Test to determine significance of the
 average mean latitude shift amongst the entire assemblage. Each row
 represents one species. atlas 1- The mean latitudes for a species in Atlas
 I atlas 2- The mean latitudes for a species in Atlas II Sheet:
 SoutherlyMeanLatWilcoxon This sheet contains the mean latitudes for the
 southerly species in Atlas I and Atlas II. This dataset was used to
 conduct a Wilcoxon Signed Rank Sum Test to determine significance of the
 average mean latitude shift amongst the entire assemblage. Each row
 represents one species. atlas 1- The mean latitudes for a species in Atlas
 I atlas 2- The mean latitudes for a species in Atlas II Sheet:
 BorealSpeciesMeanLatWilcoxon This sheet contains the mean latitudes for
 the boreal species in Atlas I and Atlas II. This dataset was used to
 conduct a Wilcoxon Signed Rank Sum Test to determine significance of the
 average mean latitude shift amongst the entire assemblage. Each row
 represents one species. atlas 1- The mean latitudes for a species in Atlas
 I atlas 2- The mean latitudes for a species in Atlas II Sheet:
 OverallMeanLatWilcoxon This sheet contains the mean latitudes for the
 northerly and southerly species in Atlas I and Atlas II. This dataset was
 used to conduct a Wilcoxon Signed Rank Sum Test to determine significance
 of the average mean latitude shift amongst all species. Each row
 represents one species. Northerly species consists of rows 2-54 and
 southerly species consist of rows 55-86. atlas 1- The mean latitudes for a
 species in Atlas I atlas 2- The mean latitudes for a species in Atlas II
 \--The following sheets are only used for materials in the Appendix--
 Sheet: Northerly20GLM This sheet contains the boundary shift (difference
 between the mean bottom 20 latitudes) and range change observed between
 Atlas I and Atlas II for the northerly species. This dataset was used to
 form a General Linear Model comparing range change with boundary shift.
 Each row represents one species. range- The range change of the species,
 measured as: log10(# of blocks occupied in Atlas II)-log10(# of blocks
 occupied in Atlas I) boundary- The shift in boundary between Atlas I and
 Atlas II, measured as the difference between the mean bottom 20 latitudes
 for Atlas II and Atlas I. Sheet: Southerly20GLM This sheet contains the
 boundary shift (difference between the mean top 20 latitudes) and range
 change observed between Atlas I and Atlas II for the southerly species.
 This dataset was used to form a General Linear Model comparing range
 change with boundary shift. Each row represents one species. range- The
 range change of the species, measured as: log10(# of blocks occupied in
 Atlas II)-log10(# of blocks occupied in Atlas I) boundary- The shift in
 boundary between Atlas I and Atlas II, measured as the difference between
 the mean top 20 latitudes for Atlas II and Atlas I. Sheet: Northerly30GLM
 This sheet contains the boundary shift (difference between the mean bottom
 30 latitudes) and range change observed between Atlas I and Atlas II for
 the northerly species. This dataset was used to form a General Linear
 Model comparing range change with boundary shift. Each row represents one
 species. range- The range change of the species, measured as: log10(# of
 blocks occupied in Atlas II)-log10(# of blocks occupied in Atlas I)
 boundary- The shift in boundary between Atlas I and Atlas II, measured as
 the difference between the mean bottom 30 latitudes for Atlas II and Atlas
 I. Sheet: Southerly30GLM This sheet contains the boundary shift
 (difference between the mean top 30 latitudes) and range change observed
 between Atlas I and Atlas II for the southerly species. This dataset was
 used to form a General Linear Model comparing range change with boundary
 shift. Each row represents one species. range- The range change of the
 species, measured as: log10(# of blocks occupied in Atlas II)-log10(# of
 blocks occupied in Atlas I) boundary- The shift in boundary between Atlas
 I and Atlas II, measured as the difference between the mean top 30
 latitudes for Atlas II and Atlas I. Sheet: Northerly40GLM This sheet
 contains the boundary shift (difference between the mean bottom 40
 latitudes) and range change observed between Atlas I and Atlas II for the
 northerly species. This dataset was used to form a General Linear Model
 comparing range change with boundary shift. Each row represents one
 species. range- The range change of the species, measured as: log10(# of
 blocks occupied in Atlas II)-log10(# of blocks occupied in Atlas I)
 boundary- The shift in boundary between Atlas I and Atlas II, measured as
 the difference between the mean bottom 40 latitudes for Atlas II and Atlas
 I. Sheet: Southerly40GLM This sheet contains the boundary shift
 (difference between the mean top 40 latitudes) and range change observed
 between Atlas I and Atlas II for the southerly species. This dataset was
 used to form a General Linear Model comparing range change with boundary
 shift. Each row represents one species. range- The range change of the
 species, measured as: log10(# of blocks occupied in Atlas II)-log10(# of
 blocks occupied in Atlas I) boundary- The shift in boundary between Atlas
 I and Atlas II, measured as the difference between the mean top 40
 latitudes for Atlas II and Atlas I. #### File:
 WBBA_Regression_R_Code_(organized).R This file contains the R Studio code
 used for the statistical analyses in the main manuscript. This code
 references the data in the files listed in this README and describes the
 test each line of code is performing.