-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdyslexia.R
54 lines (41 loc) · 2.33 KB
/
dyslexia.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
library(saccades)
rm(list=ls())
path = "C:\\Users\\Ricardo\\Google Drive\\Mestrado IFES\\Dislexia Movimentos Oculares\\dyslexia_eyemovement\\Recording Data"
setwd(path)
pessoas <- list.files(path = path, pattern = NULL, all.files = FALSE,
full.names = FALSE, recursive = FALSE,
ignore.case = FALSE, include.dirs = FALSE, no.. = FALSE)
for (i in 1:length(pessoas)) {
nome_arquivo <- paste(path, "\\", sep="")
nome_arquivo <- paste(nome_arquivo, pessoas[i],sep="")
arquivos <- list.files(path = nome_arquivo)
for (j in 1:length(arquivos)) {
# Primeiro, lemos os dados do arquivo
caminho_completo <- paste(nome_arquivo, "\\", sep="")
caminho_completo <- paste(caminho_completo, arquivos[j], sep="")
dados_movimentos <- read.delim2(caminho_completo, header = TRUE, sep = "\t", dec = ",")
dados_movimentos$trial = c(1)
# Em seguida, extraimos as informações do movimento do olho direito
dados_right = subset(dados_movimentos, select = c("RX", "RY", "trial", "T"))
names(dados_right) <- c("x", "y", "trial", "time")
# Detectamos as fixações do olho DIREITO
fixations_right = detect.fixations(dados_right)
# As informações do olho esquerdo
dados_left = subset(dados_movimentos, select = c("LX", "LY", "trial", "T"))
names(dados_left) <- c("x", "y", "trial", "time")
# Detectamos as fixações do olho ESQUERDO
fixations_left = detect.fixations(dados_right, lambda = 5, smooth.coordinates = FALSE, smooth.saccades = FALSE)
# Plotamos os dados do olho esquerdo e as fixações do olho esquerdo
diagnostic.plot(dados_left, fixations_left)
print(cat("Fixations collected from user: ", nome_arquivo))
# Calculates summary statistics about the trials and fixations in the given data frame
# Calculates the number of trials, the average duration of trials, the average number of fixations in
# trials, the average duration of the fixations, the average spatial dispersion in the fixations, and the
# average peak velocity that occurred during fixations. Where appropriate standard deviations are
# given as well. Use round to obtain a more readable version of the resulting data frame.
print(calculate.summary(fixations_left))
break;
# Uncomment to see all graph
}
break;
}