Top Banner
The use of R statistical software to analyze flow cytometry data M. Ramón 1 , A. Maroto-Morales 1 , O. García-Álvarez 2 , P. Jimenez- Rabadán 2 , MD. Pérez-Guzmán 2 , F. Martínez-Pastor 3 , AJ. Soler 1 , JJ. Garde 1 1 IREC, (CSIC-UCLM-JCCM), Albacete; 2 CERSYRA, Valdepeñas; 3 ITRA- ULE-INDEGSAL, León 10º Congreso de la Asociación Española de Reproducción Animal Cáceres, 2-5 Junio 2010
35
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: mramon_AERA2010

The use of R statistical software to analyze flow cytometry data

M. Ramón1, A. Maroto-Morales1, O. García-Álvarez2, P. Jimenez-Rabadán2, MD. Pérez-Guzmán2, F. Martínez-Pastor3, AJ. Soler1,

JJ. Garde1

1IREC, (CSIC-UCLM-JCCM), Albacete; 2CERSYRA, Valdepeñas; 3ITRA-ULE-INDEGSAL, León

10º Congreso de la Asociación Española de Reproducción AnimalCáceres, 2-5 Junio 2010

Page 2: mramon_AERA2010

R Statistical SoftwareIntegrated suite of software facilities for data manipulation, calculation and graphical display.

WinMDI Version 2.9Windows Multiple Document Interface for Flow Cytometry.The Scripps Research Institute (TSRI)

WEASEL Version 2.7.4Walter & Eliza Analysis Software: Eclectic & Lucid. The Walter and Eliza Hall Institute (WEHI)

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Page 3: mramon_AERA2010

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Main Goal: To provide widespread access to a broad range of powerful statistical and graphical methods for the analysis of genomic data.

Bioconductor provides a unified framework to develop methods to analyze and interpret Flow Cytometry data.

Most common Packages

α FlowCore α FlowUtils

α FlowViz α FlowQ

α FlowStats α FlowClust

Bioconductor Open Source Software for Bioinformatics

Page 4: mramon_AERA2010

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

A PRACTICAL EXAMPLE

• Semen sample evaluated at 2 different times (0 h and 3 h)

• Each semen sample was stained for:

• YO-PRO®-1. Apoptosis-like changes

• Propidium Iodide (PI). Membrane integrity

• MitoTracker® Deep Red FM (MT). Mitochondrial status

Page 5: mramon_AERA2010

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

1. READ DATA FILES

> flowData <- read.flowSet( path =“.”, alter.names=TRUE, phenoData= “annotation.txt")

> wf <- workFlow(flowData, name="Workflow #1")

Page 6: mramon_AERA2010

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

1. READ DATA FILES

> flowData <- read.flowSet( path =“.”, alter.names=TRUE, phenoData= “annotation.txt")

> wf <- workFlow(flowData, name="Workflow #1")

Organize standard flow cytometry data analysis in a workflow

• read.FCS()

• read.flowSet()

• list of flowSets

sampleId time stain

file.001 Y.PI.MT.0 0H FL1.H/FL3.H/SSC.W

file.002 Y.PI.MT.3 3H FL1.H/FL3.H/SSC.W

> wf

A flow cytometry workflow called 'Workflow #1'

The following data views are provided:

Basic view 'base view'

on a flowSet

not associated to a particular action item

Page 7: mramon_AERA2010

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

2. STANDARD FLOW OPERATIONS

Set of basic operations common in Flow Cytometry Analysis

• Visualize Data

• Data Compensation

• Data Transformation

• Data Normalization

• Define Target Population (gating)

Page 8: mramon_AERA2010

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

2. STANDARD FLOW OPERATIONS

Scatter plot matrix

Page 9: mramon_AERA2010

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

2. STANDARD FLOW OPERATIONS

Scatter plot matrix

Some transformation is needed for better visualization of data

Page 10: mramon_AERA2010

2a. DATA TRANSFORMATION

> tf <- transformList(colnames(flowData), asinh, transformationId="asinh")

> add(wf,tf)

> flowDataT <- transform(flowData, tf)

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Page 11: mramon_AERA2010

A new transformated flow data set

2a. DATA TRANSFORMATION

> tf <- transformList(colnames(flowData), asinh, transformationId="asinh")

> add(wf,tf)

> flowDataT <- transform(flowData, tf)

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Assign new elements to an existing workflow

• linear transformation

• quadratic transformation

• log transformation

• asinh transformation

• …

Page 12: mramon_AERA2010

2a. DATA TRANSFORMATION

Scatter plot matrix

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Page 13: mramon_AERA2010

2b. IDENTIFICATION OF SPERM POPULATION

FSC vs. SSC scatter plot

> xyplot(`SSC.H` ~ `FSC.H` | sampleId, data=wf [["asinh"]])

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Page 14: mramon_AERA2010

2b. IDENTIFICATION OF SPERM POPULATION

FSC vs. SSC scatter plot

> xyplot(`SSC.H` ~ `FSC.H` | sampleId, data=wf [["asinh"]])

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Debris

Page 15: mramon_AERA2010

2b. IDENTIFICATION OF SPERM POPULATION

FSC vs. SSC scatter plot

> sp.gate <- polygonGate(.gate=r01)

> add(wf, sp.gate, parent='asinh')

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Page 16: mramon_AERA2010

2b. IDENTIFICATION OF SPERM POPULATION

FSC vs. SSC scatter plot

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

WinMDI WEASEL

Page 17: mramon_AERA2010

3. MEMBRANE INTEGRITY STUDY

YO-PRO®-1 (FL1.H) vs. PI (FL3.H) scatter plot

> xyplot(`FL3.H` ~ `FL1.H` | sampleId, data=wf[["asinh"]])

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

RAW DATA

Page 18: mramon_AERA2010

3. MEMBRANE INTEGRITY STUDY

YO-PRO®-1 (FL1.H) vs. PI (FL3.H) scatter plot

> xyplot(`FL3.H` ~ `FL1.H` | sampleId, data=wf[["asinh"]])

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Debris must be removed !!!

RAW DATA

Page 19: mramon_AERA2010

3. MEMBRANE INTEGRITY STUDY

YO-PRO®-1 (FL1.H) vs. PI (FL3.H) scatter plot

> xyplot(`FL3.H` ~ `FL1.H` | sampleId, data=wf[["asinh"]])

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

RAW DATA SUBSET SPERM POPULATION

Page 20: mramon_AERA2010

3. MEMBRANE INTEGRITY STUDY

YO-PRO®-1 (FL1.H) vs. PI (FL3.H) scatter plot

> xyplot(`FL3.H` ~ `FL1.H` | sampleId, data=wf[["asinh"]])

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Is a compensation of data needed?

Must be applied before data transformation !!

SUBSET SPERM POPULATION

Page 21: mramon_AERA2010

2c. DATA COMPENSATION

COMPENSATION MATRIX

• Define our own compensation matrix.

• Provide on FSC files by the cytometer. Spillover() R Function

> cmat <- compensation(comp, parameters=colnames(Data(wf[["base view"]]))[3:6],

+ compensationId="comp")

> add(wf, cmat)

> flowDataC <- compensate(flowData, comp)

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Page 22: mramon_AERA2010

FL1.H FL2.H FL3.H FL4.H FL5.H

[1,] 1 0.240 0.032 0.001 0

[2,] 0.008 1 0.140 0.003 0

[3,] 0.170 0.170 1 0.210 0

[4,] 0.001 0.001 0.003 1 0

[5,] 0 0 0 0 1

2c. DATA COMPENSATION

COMPENSATION MATRIX

• Define our own compensation matrix.

• Provide on FSC files by the cytometer. Spillover() R Function

> cmat <- compensation(comp, parameters=colnames(Data(wf[["base view"]]))[3:7],

+ compensationId="comp")

> add(wf, cmat)

> flowDataC <- compensate(flowData, comp)

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Page 23: mramon_AERA2010

2c. DATA COMPENSATION

COMPENSATION MATRIX

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Page 24: mramon_AERA2010

2c. DATA COMPENSATION

COMPENSATION MATRIX

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

WEASEL

Page 25: mramon_AERA2010

3. MEMBRANE INTEGRITY STUDY

IDENTIFICATION OF DIFFERENT SUBPOPULATIONS

Definition of Regions/Quadrants

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Simple geometric Filters• Rectangle Gate

• Polygon gate

• Quadrant Gate

Data-Driven Filters• KmeansGate

• Norm2Gate

• Curv1Gate and Curv2Gate

• …

Page 26: mramon_AERA2010

3. MEMBRANE INTEGRITY STUDY

IDENTIFICATION OF DIFFERENT SUBPOPULATIONS

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

RECTANGLE REGION POLYGON REGIONS QUADRANT REGIONS

Page 27: mramon_AERA2010

3. MEMBRANE INTEGRITY STUDY

IDENTIFICATION OF DIFFERENT SUBPOPULATIONS

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

QUADRANT REGIONS

-2 0 2 4 6 8 10

0.0

00

.10

0.2

00

.30

breakpoint for parameter FL1.H

N = 12668 Bandwidth = 0.329

De

nsi

ty

breakpointdens region

2 4 6 8

0.0

0.1

0.2

0.3

0.4

breakpoint for parameter FL3.H

N = 12668 Bandwidth = 0.1223

De

nsi

tybreakpointdens region

Page 28: mramon_AERA2010

3. MEMBRANE INTEGRITY STUDY

IDENTIFICATION OF DIFFERENT SUBPOPULATIONS

Definition of Regions/Quadrants

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Regions are different for each semen sample

Data normalization will allow the use of a single region or quadrant set

Page 29: mramon_AERA2010

2d. DATA NORMALIZATION

> norm <- normalization(parameters=param, normalizationId="norm",

+ normFunction=function(x, parameters, ...) warpSet(x,parameters))

> add(wf, norm, parent="asinh")

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Y.PI.MT.0

Y.PI.MT.3

0 2 4 6 8 10

FL1.H

0 2 4 6 8 10

FL3.H

BEFORE NORMALIZATION

Page 30: mramon_AERA2010

2d. DATA NORMALIZATION

> norm <- normalization(parameters=param, normalizationId="norm",

+ normFunction=function(x, parameters, ...) warpSet(x,parameters))

> add(wf, norm, parent="asinh")

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Y.PI.MT.0

Y.PI.MT.3

-5 0 5 10

FL1.H

0 2 4 6 8 10

FL3.H

AFTER NORMALIZATION

Page 31: mramon_AERA2010

3. MEMBRANE INTEGRITY STUDY

IDENTIFICATION OF DIFFERENT SUBPOPULATIONS

Summarize statistics

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

FL1.H-FL3.H- FL1.H+FL3.H-

FL1.H+FL3.H+ Y.PI.MT.0 47.77% 33.68% 18.37% Y.PI.MT.3 53.65% 30.28% 15.15%

Page 32: mramon_AERA2010

6. SUMMARY

• Read data

• Visualize data

• Compensation data

• Transform data

• Define Sperm population

• Normalize data

• Identify Subpopulations

• Get statistics

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Page 33: mramon_AERA2010

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

WHY TO USE R?

• Allows the analysis of several raw FCS files at once

• Use criteria base on data density to identify sperm subpopulations

• Definition of a unique set of filters/gates

• Reduction in time consumption

• Powerful statistical environmental

• Important development community

• Reproducibility research

Page 34: mramon_AERA2010

7. iFLOW

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

Page 35: mramon_AERA2010

The use of R statistical software to analyze flow cytometry data10º Congreso de la Asociación Española de Reproducción Animal (AERA)Cáceres, 2-5 Junio 2010

THANK YOU FOR YOUR ATTENTION