Nothing
## ------------------------------------------------------------------------
libDir <- system.file ("extdata", package="edfReader")
AFile <- paste (libDir, '/edfAnnonC.edf', sep='') # a file with 2 annotation signals
BFile <- paste (libDir, '/bdfPlusC.bdf' , sep='') # a continuously recorded BDF file
CFile <- paste (libDir, '/edfPlusC.edf' , sep='') # a continuously recorded EDF file
DFile <- paste (libDir, '/edfPlusD.edf' , sep='') # a discontinuously recorded EDF file
## ------------------------------------------------------------------------
require (edfReader)
AHdr <- readEdfHeader (AFile)
BHdr <- readEdfHeader (BFile)
CHdr <- readEdfHeader (CFile)
DHdr <- readEdfHeader (DFile)
## ------------------------------------------------------------------------
BHdr
summary (AHdr)
## ------------------------------------------------------------------------
AHdr$sHeader
summary (CHdr$sHeader)
## ------------------------------------------------------------------------
ASignals <- readEdfSignals (AHdr)
summary (ASignals)
## ------------------------------------------------------------------------
DSignals <- readEdfSignals (DHdr)
DSignals
## ------------------------------------------------------------------------
DSignalsF <- readEdfSignals (DHdr, fragments = TRUE)
summary (DSignalsF)
## ------------------------------------------------------------------------
CSignals8 <- readEdfSignals (CHdr, signals=c(8, "8", "sine 8.5 Hz"))
summary (CSignals8)
## ------------------------------------------------------------------------
ASignalsPeriod <- readEdfSignals (AHdr, from=0.7, till=1.8)
summary (ASignalsPeriod)
## ------------------------------------------------------------------------
CSignals <- readEdfSignals (CHdr)
summary (CSignals$pulse) # edfReader names signals after their label
## ------------------------------------------------------------------------
CDSignals <- readEdfSignals (DHdr, from=5.1, till=18)
FDSignals <- readEdfSignals (DHdr, fragments=TRUE)
## ------------------------------------------------------------------------
summary (FDSignals$`sine 8.5 Hz`) # note the "`" quotes for a name with spaces.
## ------------------------------------------------------------------------
CSignals$`EDF Annotations`
## ------------------------------------------------------------------------
format (AHdr$startTime, format="%Y-%m-%d %H:%M:%OS3", usetz = FALSE)
## ------------------------------------------------------------------------
ASignalsPlusStartTimes <- readEdfSignals(AHdr, signals='EDF Annotations-1', recordStarts=TRUE)
ASignalsPlusStartTimes$recordStartTimes$startTime[1]
## ------------------------------------------------------------------------
str1 <- function (x) str (x, max.level = 1)
## ------------------------------------------------------------------------
str1 (CHdr)
## ------------------------------------------------------------------------
str1 (CHdr$sHeader)
## ------------------------------------------------------------------------
str1 (CSignals$pulse)
## ------------------------------------------------------------------------
str1 (FDSignals$`sine 8.5 Hz`)
## ------------------------------------------------------------------------
str1 (FDSignals$`sine 8.5 Hz`$fragments[[1]])
## ------------------------------------------------------------------------
ASignals2 <- readEdfSignals (AHdr, recordStarts=TRUE)
str1 (ASignals2$`EDF Annotations`)
## ------------------------------------------------------------------------
str1 (ASignals2$`EDF Annotations`$annotations)
## ------------------------------------------------------------------------
str1 (ASignals2$`EDF Annotations`$recordStartTimes)
## ---- fig.width=7.2, fig.height=2.5--------------------------------------
plotEdfSignals <- function (signals,labels, from=0, till=Inf) {
nLabels <- length (labels)
sRate <- numeric (length = nLabels)
fromS <- integer (length = nLabels)
tillS <- integer (length = nLabels)
sLength <- integer (length = nLabels)
for (i in 1:nLabels) {
sRate[i] <- signals[[labels[i]]]$sRate
fromS[i] <- ceiling (sRate[i] * max (from, 0)) +1
tillS[i] <- ceiling (sRate[i] * till)
tillS[i] <- min (tillS[i], length(signals[[labels[i]]]$signal))
sLength[i] <- tillS[i] - fromS[i] + 1
}
totLength <- sum (sLength)
cat (" totLength=", totLength)
time <- numeric (length = totLength)
signal <- numeric (length = totLength)
label <- character (length = totLength)
from <- 1
for (i in 1:nLabels) {
till <- from + sLength[i] - 1
time [from:till] <- seq (from=fromS[i]-1, to=(tillS[i]-1)) / sRate[i]
signal[from:till] <- signals[[labels[i]]]$signal[fromS[i]:tillS[i]]
label [from:till] <- rep(labels[i], sLength[i])
from <- till + 1
}
cat (" | from-1=", from-1,'\n')
ggplotDF <- data.frame (time=time, signal=signal, label=label)
ggplot (ggplotDF, aes(x=time, y=signal, colour=label)) + geom_line()
}
if (require(ggplot2)) {
CSignals <- readEdfSignals (CHdr)
plotEdfSignals (CSignals, labels=c('sine 8.5 Hz', 'sine 50 Hz'), from=.2, till=0.5)
}
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.