testSamFlags: Test if sam flags are set or unset.

Description Usage Arguments Details Value Functions Examples

Description

Logically compares one or more sam flags against an encoded sam value.

Usage

1
2
3
4
5
6
7
8
9
allSetSamFlags(val, flags)

allUnsetSamFlags(val, flags)

anySetSamFlags(val, flags)

anyUnsetSamFlags(val, flags)

matchSamFlags(val, flagVec)

Arguments

val

The encoded sam flag value to check, as a single integer value

flags

The flags to test, as a character vector.

flagVec

A logical vector where the names are sam flags and the values indicate if that flag shoud be set (TRUE) or unset (FALSE). If the value of a flag does not matter, it should not be included. NA should not be used.

Details

Note: allSetSamFlags == ! anyUnsetSamFlags, and allUnsetSamFlags == ! anySetSamFlags

Value

A single TRUE or FALSE value

Functions

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# READ_PAIRED = 1, PROPER_PAIR = 2
# All TRUE
allSetSamFlags( 1 + 2, c( "READ_PAIRED", "PROPER_PAIR" ))
anySetSamFlags( 1 + 2, c( "READ_PAIRED", "PROPER_PAIR" ))
anySetSamFlags( 1 + 2, "READ_PAIRED")
allUnsetSamFlags( 4, c( "READ_PAIRED", "PROPER_PAIR" ))
anyUnsetSamFlags( 1, "PROPER_PAIR" )
anyUnsetSamFlags( 1, c( "READ_PAIRED", "PROPER_PAIR" ))

# All FALSE
allSetSamFlags( 1, "PROPER_PAIR" )
allSetSamFlags( 1, c( "READ_PAIRED", "PROPER_PAIR" ))
anySetSamFlags( 4, c( "READ_PAIRED", "PROPER_PAIR" ))
allUnsetSamFlags( 1 + 2, c( "READ_PAIRED", "PROPER_PAIR" ))
allUnsetSamFlags( 1 + 2, "READ_PAIRED" )
anyUnsetSamFlags( 1 + 2, c( "READ_PAIRED", "PROPER_PAIR" ))

goodAlignmentFlagVec <- c(
	"READ_PAIRED"           =  TRUE, "PROPER_PAIR"             =  TRUE,
   "READ_UNMAPPED"         = FALSE, "MATE_UNMAPPED"           = FALSE,
   "NOT_PRIMARY_ALIGNMENT" = FALSE, "READ_FAILS_VENDOR_QC"    = FALSE,
   "DUPLICATE_READ"        = FALSE, "SUPPLEMENTARY_ALIGNMENT" = FALSE
)
matchSamFlags( 1+2, goodAlignmentFlagVec )    # TRUE
matchSamFlags( 1+2+4, goodAlignmentFlagVec )  # FALSE
matchSamFlags( 1, goodAlignmentFlagVec )  # FALSE

jefferys/SamSeq documentation built on Oct. 25, 2019, 8:11 a.m.