curveParam_RS {mnreadR} | R Documentation |
Standard estimation of Maximum Reading Speed (MRS) and Critical Print Size (CPS) using reading speed values.
Description
This function estimates simultaneously:
Maximum Reading Speed (MRS)
Critical Print Size (CPS)
while performing print size correction for non-standard testing viewing distance.
Usage
curveParam_RS(data, print_size, viewing_distance, reading_speed, ... = NULL)
Arguments
data |
The name of your dataframe |
print_size |
The variable that contains print size values for each sentence (print size uncorrected for viewing distance) |
viewing_distance |
The variable that contains the viewing distance value used for testing |
reading_speed |
The variable that contains the reading speed for each sentence |
... |
Optional grouping arguments |
Value
The function returns a new dataframe with two variables:
"CPS" -> contains the Critical Print Size estimate (in logMAR)
"MRS" -> contains the Maximum Reading Speed estimate (in words/min)
Notes
This function uses the original algorithm described in Legge (2007) to estimate Maximum Reading Speed (MRS) and Critical Print Size (CPS). This algorithm searches for a reading speed plateau in the data. A plateau is defined as a range of print sizes that supports reading speed at a significantly faster rate than the print sizes smaller or larger than the plateau range. Concretely, the plateau is determined as print sizes which reading speed is at least 1.96 SD faster than the other print sizes. The Maximum Reading Speed is estimated as the mean reading speed for print sizes included in the plateau. The Critical Print Size is defined as the smallest print size on the plateau.
For more details on the original algorithm, see Chapter 5 of this book:\ Legge, G.E. (2007). Psychophysics of Reading in Normal and Low Vision. Mahwah, NJ & London: Lawrence Erlbaum Associates. ISBN 0-8058-4328-0 https://books.google.fr/books/about/Psychophysics_of_Reading_in_Normal_and_L.html?id=BGTHS8zANiUC&redir_esc=y
To ensure proper estimation of the MRS and CPS, individual MNREAD curves should be plotted using mnreadCurve
and inspected visually.
Warning
To run the function properly, one needs to make sure that the variables are of the class:
-
print_size -> numeric
-
viewing_distance -> integer
-
reading_speed -> numeric
In cases where only 3 or less sentences were read during a test, the function won't be able to estimate the MRS and CPS and will return NA values instead. The ACC should be used to estimate the MNREAD score in such cases where there are not enough data points to fit the MNREAD curve.
See Also
curveParam_RT
for standard MRS and CPS estimation using values of reading time (instead of reading speed)
nlmeParam
for MRS and CPS estimation using a nonlinear mixed-effect model (NLME)
mnreadParam
for all MNREAD parameters estimation
readingAcuity
for Reading Acuity calculation
accIndex
for Reading Accessibility Index calculation
Examples
# inspect the structure of the dataframe
head(data_low_vision, 10)
# create the reading speed variable
data_low_vision <- data_low_vision %>%
mutate (rs = (10 - replace (err, err > 10, 10)) / rt * 60)
#------
# restrict dataset to one MNREAD test only (subject s1, regular polarity)
data_s1 <- data_low_vision %>%
filter (subject == "s1", polarity == "regular")
# run the parameters estimation
data_low_vision_MRS_CPS <- curveParam_RS(data_s1, ps, vd, rs)
# inspect the newly created dataframe
data_low_vision_MRS_CPS
#------
# run the parameters estimation on the whole dataset grouped by subject and polarity
data_low_vision_MRS_CPS <- curveParam_RS(data_low_vision, ps, vd, rs,
subject, polarity)
# inspect the structure of the newly created dataframe
head(data_low_vision_MRS_CPS, 10)