scallops.reads.correct_mismatches

scallops.reads.correct_mismatches(reads, barcodes, n_mismatches=1, delta_mismatches=1)

Correct mismatches between called barcodes and barcodes in a whitelist.

Note that if a read is equidistant to more than one barcode, it will not be corrected.

Parameters:
  • reads (DataFrame | DataFrame) – reads from decode_max

  • barcodes (DataFrame) – Data frame of designed barcode sequences. Expected to have column ‘barcode’

  • n_mismatches (int) – Correct mismatch if number of mismatches to the closest barcode is less than or equal to n_mismatches

  • delta_mismatches (int) – Correct mismatch if number of mismatches to 2nd closest barcode minus number of mismatches to the closest barcode is greater than or equal to delta_mismatches

Returns:

Adds the columns barcode_uncorrected, mismatches, mismatches2, closest_match, and closest_match2. Updates the barcode column to the closest match and the boolean column barcode_match if n_mismatches and delta_mismatches criteria are satisfied.

Return type:

DataFrame | DataFrame