Get startedGet started for free

Pre-process features

In the video exercise, you saw that the sample distributions for the doxorubicin study were extremely right-skewed. Thus, the first step you need to take is to pre-process the features: log-transform, normalize, and filter.

This exercise is part of the course

Differential Expression Analysis with limma in R

View Course

Exercise instructions

The ExpressionSet object eset_raw with the raw data has been loaded in your workspace. The limma package is loaded.

  • Log transform the measurements. Use plotDensities to visualize. Label the samples by their genotype.

  • Quantile normalize the measurements with normalizeBetweenArrays and re-visualize.

  • Use rowMeans to determine which genes have a mean expression level greater than 0.

  • Filter the genes (i.e. rows) with the logical vector keep and re-visualize.

Hands-on interactive exercise

Have a go at this exercise by completing this sample code.

# Create a new ExpressionSet to store the processed data
eset <- eset_raw
# Log transform
exprs(eset) <- ___(exprs(eset))
___(eset,  group = pData(eset)[___], legend = "topright")
# Quantile normalize
exprs(eset) <- ___(exprs(eset))
___(eset,  group = pData(eset)[___], legend = "topright")
# Determine the genes with mean expression level greater than 0
keep <- ___(exprs(eset)) > ___
sum(keep)
# Filter the genes
eset <- eset[___]
___(eset, group = pData(eset)[___], legend = "topright")
Edit and Run Code