Statement of Purpose
This webpage is periodically updated with new longitudinal L2
pronunciation research that does not have a pronunciation-specific
intervention. On this page, you can see the types of longitudinal
studies that have been conducted up to this point, focusing on
longitudinal design choices, such as study length and data points, and
their intersection with participant sample and measurement
characteristics. This page accompanies and builds upon
Nagle, C. L. (2021). Assessing the state of the art in longitudinal L2 pronunciation research: Trends and future directions. Journal of Second Language Pronunciation, 7(2), 154-182. http://doi.org/10.1075/jslp.20059.nag
In that publication, I synthesized longitudinal pronunciation research that met three basic inclusion criteria: (1) tracked the same groups of participants over two or more data points, (2) did not include pronunciation-related training or a pronunciation-specific intervention, and (3) was published after 2006 in a peer-reviewed journal.
I am now expanding beyond the initial scope of that study, and I have reconfigured the data set from the format published and analyzed in Nagle (2021). In the updated data set, I treat each sample as an individual entry, which means that research reports that include multiple samples have multiple entries. By treating each sample as an individual entry in the data set, we can see how many unique longitudinal samples have been collected, including samples that were included in the same research report. Some researchers have analyzed the same group of participants in several reports, but it is not always clear if the sample is the exact same across reports, so I treat those samples as unique. Research reports may have multiple samples for any of the following reasons: (1) L1 background, (2) age range, (3) context of learning. The “Multiple Entry” variable allows the data to be subset to exclude multiple entries to avoid double counting studies for certain tabulations, such as study length, data points, and so on.
Researchers
If you have published a longitudinal L2 pronunciation study that you
think should be included in this webpage, please email me the citation
so that I can review it and incorporate it if appropriate.
Authors
If you believe that there has been an error in the coding for your
article, please contact me.
Users
If there is a particular cross-tabulation you’re interested in but don’t
see it here, please contact me.
My Contact Information
Charlie Nagle
The University of Texas at Austin
Email: cnagle[at]austin.utexas.edu
APA 7 Citation
Nagle, C. (Year, Month Day). LongPron: Tracking longitudinal L2
pronunciation research. https://cnagle5.github.io/longpron/
long.data <- read.csv(
file = here("New Longitudinal Research Synthesis.csv")) %>%
clean_names() %>%
mutate(length_bin = fct_relevel(length_bin, "0 to 4", "4 to 8", "8 to 12", "12 to 24", "24+"),
participant_age_bin = fct_relevel(participant_age_bin, "Child", "Adolescent", "Adult"))
long.data %>%
filter(multiple_entry == "No") %>%
ggplot(aes(x = study_year)) +
geom_bar(stat = "count", color = "black", fill = "#56B4E9", width = 0.8) +
theme_bw() +
labs(x = "Publication Year", y = "Count") +
scale_x_continuous(breaks = c(2006:2023)) +
theme(axis.text.x = element_text(angle = 45, vjust = .5))
Figure 1. Longitudinal L2 Pronunciation Publications by Year
long.data %>%
filter(multiple_entry == "No") %>%
ggplot(aes(x = length_months, y = data_points_number, color = l2)) +
geom_point(position = position_dodge(width = 2), alpha = 0.5, size = 3) +
theme_bw() +
labs(x = "Study Length in Months", y = "Study Data Points") +
theme(legend.position = "bottom") +
scale_y_continuous(breaks = c(2:8)) +
scale_x_continuous(breaks = c(0, 4, 8, 12, 16, 20, 24), limits=c(0, 30))
Figure 2. Study Length by Data Points
long.data %>%
filter(multiple_entry == "No") %>%
tabyl(length_bin, data_points_number) %>%
adorn_totals( where = c("row", "col") ) %>%
adorn_percentages("row") %>%
adorn_pct_formatting() %>%
adorn_ns( position = "front" ) %>%
adorn_title("combined") %>%
kable(caption = "**Table 1**. Study Length by Study Data Points") %>%
kable_styling(bootstrap_options = c("bordered", "hover"))
length_bin/data_points_number | 2 | 3 | 4 | 5 | 6 | 8 | Total |
---|---|---|---|---|---|---|---|
0 to 4 | 10 (62.5%) | 1 (6.2%) | 1 (6.2%) | 2 (12.5%) | 0 (0.0%) | 2 (12.5%) | 16 (100.0%) |
4 to 8 | 2 (18.2%) | 2 (18.2%) | 2 (18.2%) | 4 (36.4%) | 0 (0.0%) | 1 (9.1%) | 11 (100.0%) |
8 to 12 | 3 (27.3%) | 3 (27.3%) | 2 (18.2%) | 1 (9.1%) | 2 (18.2%) | 0 (0.0%) | 11 (100.0%) |
12 to 24 | 0 (0.0%) | 1 (25.0%) | 1 (25.0%) | 0 (0.0%) | 1 (25.0%) | 1 (25.0%) | 4 (100.0%) |
24+ | 3 (60.0%) | 1 (20.0%) | 0 (0.0%) | 1 (20.0%) | 0 (0.0%) | 0 (0.0%) | 5 (100.0%) |
Total | 18 (38.3%) | 8 (17.0%) | 6 (12.8%) | 8 (17.0%) | 3 (6.4%) | 4 (8.5%) | 47 (100.0%) |
long.data %>%
ggplot(aes(x = length_bin)) +
geom_bar(stat = "count", color = "black", fill = "#56B4E9", width = 0.8) +
theme_bw() +
labs(x = "Study Length", y = "Count") +
facet_wrap(~ participant_age_bin) +
theme(strip.background = element_blank()) +
theme(axis.text.x = element_text(angle = 45, vjust = .5))
Figure 3. Number of Unique Samples: Study Length by Learner Age Group
long.data %>%
filter(participant_age_bin == "Adult") %>%
pivot_longer(cols = context_fl:context_sl,
names_to = "context") %>%
filter(value == "Yes") %>%
ggplot(aes(x = data_points_number)) +
geom_bar(stat = "count", color = "black", fill = "#56B4E9", width = 0.8) +
theme_bw() +
labs(x = "Study Data Points", y = "Count") +
facet_grid(~ context) +
theme(strip.background=element_blank()) +
scale_x_continuous(limits = c(1,9), breaks = c(2:8))
Figure 4. Number of Unique Samples: Study Length by Context of Learning for Adult Learners
long.data %>%
pivot_longer(cols = perception:production_global,
names_to = "construct") %>%
filter(value == "Yes") %>%
ggplot(aes(length_bin)) +
geom_bar(stat = "count", color = "black", fill = "#56B4E9", width = 0.8) +
theme_bw() +
labs(x = "Study Length", y = "Count") +
facet_wrap(~ construct) +
theme(strip.background = element_blank()) +
theme(axis.text.x = element_text(angle = 45, vjust = .5))
Figure 5. Number of Unique Samples: Study Length by Construct
long.data %>%
pivot_longer(cols = perception:production_global,
names_to = "construct") %>%
filter(value == "Yes") %>%
ggplot(aes(data_points_number)) +
geom_bar(stat = "count", color = "black", fill = "#56B4E9", width = 0.8) +
theme_bw() +
labs(x = "Study Data Points", y = "Count") +
facet_wrap(~ construct) +
theme(strip.background = element_blank()) +
scale_x_continuous(limits = c(1, 9), breaks = c(2:8))
Figure 6. Number of Unique Samples: Study Data Points by Construct
long.data %>%
pivot_longer(cols = task_controlled:task_spontaneous,
names_to = "task") %>%
filter(value == "Yes") %>%
ggplot(aes(length_bin)) +
geom_bar(stat = "count", color = "black", fill = "#56B4E9", width = 0.8) +
theme_bw() +
labs(x = "Study Length", y = "Count") +
facet_wrap(~ task) +
theme(strip.background = element_blank()) +
theme(axis.text.x = element_text(angle = 45, vjust = .5))
Figure 7. Number of Unique Samples: Study Length by Task Type
long.data %>%
pivot_longer(cols = task_controlled:task_spontaneous,
names_to = "task") %>%
filter(value == "Yes") %>%
ggplot(aes(data_points_number)) +
geom_bar(stat = "count", color = "black", fill = "#56B4E9", width = 0.8) +
theme_bw() +
labs(x = "Study Data Points", y = "Count") +
facet_wrap(~ task) +
theme(strip.background = element_blank()) +
scale_x_continuous(limits = c(1, 9), breaks = c(2:8))
Figure 8. Number of Unique Samples: Study Data Points by Task Type
long.data %>%
mutate(linguistic_or_acoustic = coding_linguistic_or_acoustic_properties,
expert_rating = coding_expert_rating,
human_intuition = coding_human_intuition) %>%
pivot_longer(cols = linguistic_or_acoustic:human_intuition,
names_to = "coding_approach") %>%
mutate(coding_approach = fct_relevel(coding_approach, c("linguistic_or_acoustic",
"expert_rating",
"human_intuition"))) %>%
filter(value == "Yes") %>%
ggplot(aes(length_bin)) +
geom_bar(stat = "count", color = "black", fill = "#56B4E9", width = 0.8) +
theme_bw() +
labs(x = "Study Length", y = "Count") +
facet_wrap(~ coding_approach) +
theme(strip.background = element_blank()) +
theme(axis.text.x = element_text(angle = 45, vjust = .5))
Figure 9. Number of Unique Samples: Study Length by Coding Approach
long.data %>%
mutate(linguistic_or_acoustic = coding_linguistic_or_acoustic_properties,
expert_rating = coding_expert_rating,
human_intuition = coding_human_intuition) %>%
pivot_longer(cols = linguistic_or_acoustic:human_intuition,
names_to = "coding_approach") %>%
mutate(coding_approach = fct_relevel(coding_approach, c("linguistic_or_acoustic",
"expert_rating",
"human_intuition"))) %>%
filter(value == "Yes") %>%
ggplot(aes(data_points_number)) +
geom_bar(stat = "count", color = "black", fill = "#56B4E9", width = 0.8) +
theme_bw() +
labs(x = "Study Data Points", y = "Count") +
facet_wrap(~ coding_approach) +
theme(strip.background = element_blank()) +
scale_x_continuous(limits = c(1, 9), breaks = c(2:8))
Figure 10. Number of Unique Samples: Study Data Points by Coding Approach