Index sorting is a method that deposits individual cells from a heterogenous mixture into wells of a plate (96, 384, and so on). Sorted cells are usually selected by some criteria (such as GFP+ and CD11b+, but CD3-) and then channeled into an empty well. Cells that do not meet the specified criteria are shunted to a waste tube.
The cytometer that sorts the cells will export a file that specifies the locations of sorted cells into their respective wells by using some sort of keyword (such as Index_Sort_Positions, Tray_X, Tray_Y, and so on).
There are generally two types of exported index sorted file:
- a single file, which contains all cells deposited into the plate.
- a “total” file, which contains all of the data from the sort (not just the sorted cells).
In either case, the exported file can be thought of as a concatenate, that is, a composite file, made up of several individual files.
It is because of this concatenated nature of the sort file that we must take a few extra steps to properly parse the data to extract the information we want. Fortunately, the scripts we need to parse these data are freely available on our FlowJo Exchange site (http://exchange.flowjo.com). Currently two are available. One is designed for BD’s Aria sorters and the other for the Influx. However, either script can easily be modified in a text editor for any cytometer or set of alternate keywords.
Common questions we would like to know when investigating index sorted files are:
- Where are my “Your_favorite_antigen_here” +/- cells in the context of the 96-well plate? That is, which cell is in which well?
- I have cells that were sorted as being double positive and single positive for several markers. I have gated those populations as a cluster, but would like to know see where each individual cell falls within the context of the plate.
- How do my sorted cells look in the context of the entire sorted population? Can I see the cell deposited in well B11 in the context of all cells along the FITC and APC-H7 parameters?
To answer these questions, we need to use the Script Editor, Export, and Concatenation functions in FlowJo. Here are the steps to parse and gate index sorted data.
- Open a new workspace.
- Add your index sorted file to the workspace.
- Open the Script Editor.
- If you don’t have the Index Sort Script, download it from the FlowJo Exchange (http://exchange.flowjo.com). Note: Both scripts—the one for BD’s Aria™ sorters, and the one for Influx™ sorters—are included in the zip file.
- In the Script Editor, open the script by clicking the Open File button.
- (Optional) To work with your files’ sort keywords, edit the script.
- In the upper right of the middle pane, click Run.
- You should see populations created in the workspace with names 0,0, 0,1, 0,2, and so on. The first digit corresponds to the plate’s row (0 for Row A, 1 for Row B, 10 for Row G, and so on), and the second digit corresponds to the plate’s column (0 for column 1, 1 for column 2, 2 for column 3, and so on). If you had a fully-sorted 96-well plate, you should see 96 populations. If you sorted multiple cells into a particular well, the population of those wells will be greater than 1.
- At this point we have our individual cells as populations, but unfortunately we can’t attach a keyword (like the well ID) to a population in the FlowJo workspace. As a result, we need to export each population as an individual FCS file. These new files can have a new keyword tethered to them.
- Select all the populations in the workspace (Ctrl-A for Windows and Cmd-A for Mac), and deselect the parent file by clicking it while holding the Ctrl/Cmd key.
- From the File tab, Document band, click Export Concatenate, and select “Export/Concatenate populations from the drop-down menu.
- In the Export dialog, make the selections for where to deposit the files, their names, and any parameters you wish to include. Note: exporting the uncompensated parameters permits usage of gates used on the parental file, as the exported files can have the acquisition-defined compensation matrix applied to them.
- Click Export. Either drop the files into the existing workspace or into a new workspace, whichever is easier. I prefer a new workspace, because that way I don’t accidentally add keywords or concatenate parental files with my fresh exports.
- Navigate to the Configure tab, Settings band, and click Edit Columns.
- A menu with two panes will appear.
- Select the Well ID: column from the left pane, and click Add Column from the middle section between the two panes. Well ID: should appear in the pane on the right (along with Name, Cells, and Statistic).
- Click OK.
- The workspace should now have a new column labeled “Well ID:” with empty cells.
- Type the Well IDs for each file, copy/paste from a spreadsheet/text file, or use the keyword importer plugin to affix the individual Well IDs. The samples should come into the workspace in their proper well order (file 0,0 will be first and 11,11 will be last). If not, double-click the Name column on the workspace to reorder the samples or change your workspace preferences to order the samples by filename ($FIL)
- At this point, we can add statistics to each sample (such as Median for parameter/Antigen X), and visualize which cells have the highest or lowest expression in the context of their wells.
- Right-click (Windows) or Ctrl-click (Mac) one or more samples, and select Add Statistic from the menu.
- Add one or more statistics to the sample of choice, and click Add. Close the Statistics window.
- Copy the statistic node(s) to the group.
- Open the Layout Editor.
- In the Layout Editor, click the Plate icon (fourth from the left, just above the page).
- In the page within the Layout Editor, click and drag your mouse anywhere to create a “plate” box.
- Drag a statistic node from one sample in the workspace into the plate box in the Layout Editor.
- The plate displays a heatmap of the expression of your marker (or whatever statistic you have chosen).
- From this point, we may want gate on our sorted cells as an aggregate (such as All FITC+ but leave out any FITC-), then identify which wells these cells occupy. To do this, we need to concatenate our exported files. It may also be easier to identify their locations in the original plate if we create two new keywords “Row ID” and “Column ID.” Make samples 0,0 through 0,11 have the Row ID = 8, samples 1,0 through 1,11 Row ID = 7, samples 2,0 through 2,11 Row ID = 6 and so on. The Column IDs should be as follows: all files with the second digit of “0” have a Column ID of “1,” a second digit “1” should have Column ID “2,” and so on. (This way, our cells will appear in a plate orientation as you would see it face-on, that is, Row A at the top and Column 1 on the left, Row H at the bottom and column 12 on the right). You can use the “Create Keyword Value Series” button within the Workspace tab, Keywords band to quickly establish the necessary patterns by adjusting the rules in the dialog.
- Select all the exported files in the workspace.
- Navigate to the File tab, Documents band, and click Export/Concatenate.
- From the drop-down menu, select Export/Concatenate Populations.
- In the dialog, click Concatenate.
- If you chose to assign a new keyword to each row and column, make sure to incorporate these keywords as parameters in the resulting file by clicking Additional Keywords in the Advanced Settings menu. In the dialog, hold the Ctrl key to select both the Row ID and Column ID keywords.
- Give the concatenated file a name, location to be deposited, and click Concatenate.
- Bring the concatenated file into the existing workspace with the exported files.
- Gate the concatenated file according to your criteria (such as FITC+/-).
- To identify which of the “FITC+” cells are in which wells, double-click the FITC+ gate (such that you are looking at the child population, for example all FITC+ cells) and change the X and Y axes to the Column and Row IDs, respectively. You may need to transform the axes or increase the size of the graph window to visualize the plate positions more easily.
- Alternatively, you can create an overlay of the FITC+ population and the ungated population in the Layout Editor. Change the axes of the plot in the Layout Editor to Row ID on the Y axis and Column ID on the X.
- To visualize where your selected cells/populations lie with respect to the entire sort file, simply create an overlay in the Layout Editor with the selected population and the ungated sort file. Use the Make Multigraph Overlays option to create an NxN plot showing your selected population overlaid with the ungated sort file across all possible parameter combinations.