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
)
```

- data
The output of

`make_eyetrackingr_data`

- aois
Which AOI(s) is/are of interest? Defaults to all specified in

`make_eyetracking_r_data`

- predictor_columns
Which columns indicate predictor vars, and therefore should be preserved in grouping operations?

- other_dv_columns
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.- summarize_by
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")
}
```