You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* start help cleanup of active plugins
* cleanup repo root folder
* make style match CP templates
* black format all active plugins
---------
Co-authored-by: bethac07 <bcimini@broadinstitute.org>
Copy file name to clipboardExpand all lines: active_plugins/callbarcodes.py
+77-48Lines changed: 77 additions & 48 deletions
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,3 @@
1
-
# coding=utf-8
2
-
3
1
#################################
4
2
#
5
3
# Imports from useful Python libraries
@@ -40,35 +38,48 @@
40
38
__doc__="""\
41
39
CallBarcodes
42
40
============
43
-
44
-
**CallBarcodes** - This module calls barcodes.
45
-
46
-
|
47
-
48
-
============ ============ ===============
49
-
Supports 2D? Supports 3D? Respects masks?
50
-
============ ============ ===============
51
-
YES Yes YES
52
-
============ ============ ===============
53
-
41
+
**CallBarcodes** is used for assigning a barcode to an object based on the channel with the strongest intensity for a given number of cycles.
42
+
It is used for optical sequencing by synthesis (SBS).
54
43
55
44
What do I need as input?
56
45
^^^^^^^^^^^^^^^^^^^^^^^^
57
-
To be added
46
+
You need to input a .csv file that contains at least two columns.
47
+
One column contains the known barcodes that you will be matching against.
48
+
One column contains the corresponding gene/transcript names.
49
+
All other columns in the .csv will be ignored.
50
+
51
+
Before running this module in your pipeline, you need to identify the objects in which you will be calling your barcodes and you will need to have measured the intensities of each object in four channels corresponding to nucleotides A,C,T, and G.
52
+
If the background intensities of your four channels are not very well matched, you might want to run the **CompensateColors** module before measuring the object intensities.
58
53
59
54
What do I get as output?
60
55
^^^^^^^^^^^^^^^^^^^^^^^^
61
56
To be added
62
57
63
58
Measurements made by this module
64
59
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
65
-
To be added
60
+
Within the InputObject.csv, this module outputs the following measurements:
61
+
- BarcodeCalled is the n-cycle string of the barcode sequence that was read by the module
62
+
- MatchedTo_Barcode is the known barcode that the module best matched to the called barcode
63
+
- MatchedTo_ID is an ID number assigned to each known barcode
64
+
- MatchedTo_GeneCode is the known gene/transcript name that corresponds to the known barcode
65
+
- MatchedTo_Score is the quality of the called barcode to known barcode match, reported as (matching nucleotides)/(total nucleotides) where 1 is a perfect match
66
+
67
+
Note that CellProfiler cannot create a per-parent mean measurement of a string.
66
68
67
69
References
68
70
^^^^^^^^^^
69
71
Optical Pooled Screens in Human Cells.
70
72
Feldman D, Singh A, Schmid-Burgk JL, Carlson RJ, Mezger A, Garrity AJ, Zhang F, Blainey PC.
71
73
Cell. 2019 Oct 17;179(3):787-799.e17. doi: 10.1016/j.cell.2019.09.016.
74
+
75
+
|
76
+
77
+
============ ============ ===============
78
+
Supports 2D? Supports 3D? Respects masks?
79
+
============ ============ ===============
80
+
YES YES YES
81
+
============ ============ ===============
82
+
72
83
"""
73
84
74
85
C_CALL_BARCODES="Barcode"
@@ -133,15 +144,15 @@ def set_directory_fn(path):
133
144
"Select the column of barcodes to match against",
134
145
["No CSV file"],
135
146
choices_fn=self.get_choices,
136
-
doc="""\
147
+
doc="""\Select the column of barcodes to match against.
0 commit comments