Collapse time across our entire window and return a dataframe ready for analyses
make_time_window_data(
data,
aois = NULL,
predictor_columns = NULL,
other_dv_columns = NULL,
summarize_by = NULL
)
The output of make_eyetrackingr_data
Which AOI(s) is/are of interest? Defaults to all specified in
make_eyetracking_r_data
Which columns indicate predictor vars, and therefore should be preserved in grouping operations?
Within each participant/trial (or whatever is specified in summarize_by
),
this function will calculate not only proportion-looking, but also the mean of any columns specified here.
Should the data be summarized along, e.g., participants, items, etc.? If so, give
column names here. If left blank, will leave trials distinct. The former is needed for more traditional
analyses (t.test
, ANOVA
), while the latter is preferable for mixed-effects models (lmer
)
Data with proportion-looking and transformations (logit, arc-sin, etc.)
Aside from proportion looking (Prop
), this function returns several columns useful for subsequent
analysis:
LogitAdjusted
- The logit is defined as log( Prop / (1 - Prop) )
. This
transformation attempts to map bounded 0,1
data to the real number line. Unfortunately,
for data that is exactly 0 or 1, this is undefined. One solution is add a very small value to
any datapoints that equal 0, and subtract a small value to any datapoints that equal 1 (we use
1/2 the smallest nonzero value for this adjustment).
Elog
- Another way of calculating a corrected logit transformation is to
add a small value epsilon
to both the numerator and denominator of the logit equation (we
use 0.5).
Weights
- These attempt to further correct the Elog transformation, since the
variance of the logit depends on the mean. They can be used in a mixed effects model by setting
the weights=Weights
in lmer
(note that this is the reciprocal of the
weights calculated in this empirical logit
walkthrough, so you do *not* set weights = 1/Weights
as done there.)
ArcSin
- The arcsine-root transformation of the raw proportions, defined as
asin(sqrt(Prop))
data(word_recognition)
data <- make_eyetrackingr_data(word_recognition,
participant_column = "ParticipantName",
trial_column = "Trial",
time_column = "TimeFromTrialOnset",
trackloss_column = "TrackLoss",
aoi_columns = c('Animate','Inanimate'),
treat_non_aoi_looks_as_missing = TRUE
)
# generate a dataset summarizing an AOI (Animate) by ParticipantName
response_window_agg_by_sub <- make_time_window_data(data,
aois='Animate',
summarize_by = "ParticipantName"
)
if (FALSE) {
# optionally included additional columns for use as predictors
# in later statistical models
response_window_agg_by_sub <- make_time_window_data(data,
aois='Animate',
predictor_columns=c('Age','MCDI_Total'),
summarize_by = "ParticipantName"
)
# plot the aggregated data for sanity check
plot(response_window_agg_by_sub, predictor_columns="Age", dv = "LogitAdjusted")
}