Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
RMarkdown file showing the nirs data analysis
title author date output
Loading and plotting nirs data
Eryk Walczak
18 December 2016
html_document pdf_document
default
default
knitr::opts_chunk$set(echo = TRUE, message = FALSE, warning = FALSE)

Loading

Install the necessary packages if not available:

# install.packages("R.matlab")
library(R.matlab)

Load the nirs file

data <- readMat("Simple_Probe.nirs")

Nirs format description is available here

Exploring

Get the available variable names

names(data)

Find the dimensions of data: samples and channels

dim(data$d)

# number of channels
ncol(data$d)

Plotting

Create a custom plotting function

myPlot <- function(y){
  plot(data$t, y,
       type = "l",
       xlab = "Time", ylab = "Intensity",
       ylim = c(range(data$d)),
       main = paste("Channel ", toString(y)))
  # add the lines when triggers occur
  lines(data$t, data$s*1500, # multiply the trigger value to make it visible
        type = "l", xlab = "Time", col = "red")
}

Apply the plotting function to all channels

apply(data$d[, 1:ncol(data$d)], 2, myPlot)

Session info:

sessionInfo()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment