Skip to contents

Read in FCS files and put them together in a gating set.

Usage

makeGatingSet(
  patt = NULL,
  comp = ".",
  fn = ".",
  tx = ".",
  channel = ".",
  fcsRepair = FALSE,
  verbose = "."
)

Arguments

patt

A regular expression defining a possible subset of FCS files residing in the directory specified by fn to read in. Only matching patterns will be included.

comp

Logical. If compensation should be applied or not. If left at the default '.', the value as defined in the settings file (key 'dV_comp') will be used.

fn

Character length one. The name of the folder where FCS files should be read from. If left at the default '.', the folder name as defined in the settings file (key: 'foN_fcsFiles') will be used.

tx

Character length one. The transformation applied to *all* channels within the individual flow sets. If left at the default '.', the value as defined in the settings file (key 'dV_tx') will be used. (Currently only 'fjbiex' is implemented.)

channel

A regular expression indicating which channels, i.e. which columns to keep from the original flowFrames; is passed down to argument column.pattern of read.flowSet. Set to NULL to read data from all channels. If left at the default '.', the value as defined in the settings file (key 'dV_channel') will be used.

fcsRepair

Logical. If set to TRUE, fcs-files in the folder specified at argument 'fn' will be checked for multiplied entries in the keywords, as after some testing the author came to the humble conclusion that these multiplied keywords can be the reason for the error message:
"The HEADER and the TEXT segment define different starting point ... to read the data".
If 'fcsRepair' is set to TRUE, all except the last of each multiplied keyword will be removed and the fcs file will be saved to disc, overwriting the original fcs file without further warning.
Use the function checkRepairFcsFiles which does offer more options to manually check and repair afflicted fcs files. There, it is possible to display multiplied keywords and to select which one to keep.

verbose

Logical. If status messages should be displayed. If left at the default '.', the value as defined in the settings file (key 'dV_verbose') will be used.

Value

A gating set as produced by GatingSet.

Details

If no folder name is specified, FCS files are being read in from the default FCS-files folder.

Regarding Compensation

Due to the circumstances when developing this code, it was never required to apply any kind of compensation. The functionality to apply compensation was therefore never tested or verified. It is strongly advised to use caution when applying compensation. It might well be necessary to modify the source code of this function (fork from https://github.com/bpollner/flowdex) in order to achieve correct compensation results.

See also

Other Extraction functions: addGates(), makeAddGatingSet(), makefdmat()

Examples

td <- tempdir()
data_source <- "https://github.com/bpollner/data/raw/main/flowdex_examples/flowdex_examples.zip"
check_download_data(td, data_source)
exp_home <- paste0(td, "/flowdex_examples")
old_wd <- getwd()
setwd(exp_home)
#
assign("get_settings_from_flowdex_package_root", TRUE, pos=.GlobalEnv)
# only required to make the examples run automatically
# you should not call 'assign' if you run the examples manually
# the effect of setting 'get_settings_from_flowdex_package_root' to TRUE
# is that the file 'flowdex_settings.R' in 'root' of the installed package
# 'flowdex' will be sourced instead of the one in the user-defined location.
#
gs1 <- makeGatingSet()
#> Reading in fcs files... ok. 
#> Producing gating set... Applying fjbiexp transformation... ok. 
gs2 <- makeGatingSet(patt="T4")
#> Reading in fcs files... ok. 
#> Producing gating set... Applying fjbiexp transformation... ok. 
#
setwd(old_wd)