0

So, I apologise in advance for my poor attempt at explaining myself. I am rather lost.

Summary: I am working with the eyelinker package in R to analyse pupil size data in a time-series fashion.

I have managed to create a set of intervals where blinks start and end (extendedBlinks, they extend 150 milliseconds each direction (1000Hz).

# Define set of intervals for blinks
Blk <- cbind(df$blinks$stime, df$blinks$etime)

# Extend blinks (100 milliseconds each way)
extendedBlinks <- Intervals(Blk) %>% expand(150, "absolute")
head(extendedBlinks)
output:

Object of class Intervals
6 intervals over R:
[4485724, 4486141]
[4485984, 4486657]
[4486549, 4486853]
[4486595, 4487040]
[4486800, 4489142]
[4498990, 4499339]

In my dataframe, I have PSL (Pupil Size Left), PSR (Pupil Size Right), and time (relative to the eyetracker, and has the same values as the intervals shown above.

So, I want to get the PSL/PSR (for the sake of the example, let's just stick to getting the PSL).

I've tried many things, nothing seems to work for me. I want to replace the given values in y1 with extendedBlinks[1,1] and extendedBlinks[1,2] respectively (and then iterate over the intervals to interpolate the blinks.

# Interpolation
x1 <- c(extendedBlinks[1,1],extendedBlinks[1,2])
y1 <- c(500, 550)

interp <- approx(x1,y1, n = extendedBlinks[1,2]-extendedBlinks[1,1])
plot(interp)

Again, sorry for the poorly worded question. I'll edit as I receive feedback to try and make it clearer.

Any ideas?

Cheers!

  • Please provide a [minimal reproducible dataset](https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example). Can you also show what you have done so far, and what is the expected end result of your analysis? – Adam Quek May 29 '22 at 09:36
  • I've just seen this message as well! Thanks Adam, I managed to use na.approx() as a way to interpolate across the values here. – Daniel Frazer Jul 15 '22 at 06:03

0 Answers0