1
|
1 This package contains R code for converting and transforming a binary
|
|
2 FCS file, using the FCSTrans software, and the C code for running the
|
|
3 flock1 and flock2 population identification software.
|
|
4
|
|
5 src - contains the C code for flock1, flock2 and cent_adjust
|
|
6 bin - contains the compiled C code for flock1, flock2 and cent_adjust,
|
|
7 plus the R code for using the FCSTrans algorithm for file
|
|
8 conversion and data transformation.
|
|
9 doc - documentation for FCSTrans and FLOCK algorithms
|
|
10 example - sample data and output from FCSTrans and FLOCK
|
|
11
|
|
12 To run this software sucessfully the code assumes the software was installed
|
|
13 in the /usr/local/flock directory and that R, plus the Bioconductor flowCore
|
|
14 module has been installed. If you use the ipconvert.sh shell script, you
|
|
15 may need to adjust the location of the RScript executable and the location
|
|
16 of the FCSTrans.R code by editing the shell script.
|
|
17
|
|
18 #############################################################################
|
|
19 # Overview
|
|
20 #############################################################################
|
|
21 ImmPort-FLOCK
|
|
22
|
|
23 FLOCK (FLOw Clustering without K), an automated population discovery tool for
|
|
24 multidimensional FCM data was designed to specifically take into account the
|
|
25 unique feature of FCM data and produce objective segregation of cell
|
|
26 populations.
|
|
27
|
|
28 FLOCK parameter settings can be customized by defining Bins and Density
|
|
29 Threshold. The number of bins is an integer specifying the number of
|
|
30 equal-sized regions the data will be partitioned into on each axis. Increasing
|
|
31 the number of bins increases the sensitivity to detect rare populations but
|
|
32 may also result in single populations being divided. Density Threshold is the
|
|
33 cut-off value to separate the dense regions from background. It is a floating
|
|
34 point number that helps define population centers; increasing the threshold
|
|
35 may help separate major populations but could cause the algorithm to overlook
|
|
36 rare populations.
|
|
37
|
|
38 #############################################################################
|
|
39 # Compiling C code
|
|
40 #############################################################################
|
|
41 cd bin
|
|
42 cc -o flock1 ../src/flock1.c ../src/find_connected.c -lm
|
|
43 cc -o flock2 ../src/flock2.c -lm
|
|
44 cc -o cent_adjust ../src/cent_adjust.c -lm
|
|
45
|
|
46 #############################################################################
|
|
47 # FCSTrans
|
|
48 #############################################################################
|
|
49 A shell script named ipconvert.sh is included that runs the FCSTrans R
|
|
50 code for converting and transforming a binary FCS file. The output consists
|
|
51 of one text file containing the transformed channel intensity values and
|
|
52 another file containing a list of the FCS parameters.
|
|
53
|
|
54 cd bin
|
|
55 /usr/local/flock/bin/ipconvert.sh ../example/data/FCS2.fcs
|
|
56 /usr/local/flock/bin/ipconvert.sh ../example/data/FCS3.fcs
|
|
57
|
|
58 #############################################################################
|
|
59 # Running flock1 or flock2
|
|
60 #############################################################################
|
|
61 Running the FLOCK1 and FLOCK2 algorithms generate 8 output files that have
|
|
62 generic file names. For this reason, it is recommended that one output
|
|
63 directory be created for one input file to the program.
|
|
64
|
|
65 cd example/output/FCS2
|
|
66 /usr/local/flock/bin/flock1 ../../data/FCS2.txt
|
|
67
|
|
68 cd example/output/FCS3
|
|
69 /usr/local/flock/bin/flock2 ../../data/FCS3.txt
|
|
70
|
|
71 Files created: MFI.txt, percentage.txt, population_id.txt, profile.txt,
|
|
72 flock_results.txt, coordinates.txt, population_center.txt
|
|
73 and percentage.txt
|
|
74
|
|
75 Usage Information for FLOCK1
|
|
76 ----------------------------------------------------------------------------
|
|
77 basic mode: flock1 fcs.txt
|
|
78 advanced_ mode: flock1 fcs.txt num_bin density_index max_num_pop
|
|
79
|
|
80 Usage Information for FLOCK2
|
|
81 ----------------------------------------------------------------------------
|
|
82 basic mode: flock data_file
|
|
83 advanced mode 0 (specify maximum # of pops): flock data_file max_num_pop
|
|
84 advanced mode 1 (without # of pops): flock data_file num_bin density_index
|
|
85 advanced mode 2 (specify # of pops): flock data_file num_bin density_index
|
|
86 number_of_pop
|
|
87 advanced mode 3 (specify both # of pops): flock data_file num_bin density_index
|
|
88 number_of_pop max_num_pop
|
|
89
|
|
90 FLOCK Output Files
|
|
91 ----------------------------------------------------------------------------
|
|
92 coordinates.txt:
|
|
93 Output is the intensity values for each marker and event
|
|
94
|
|
95 flock_results.txt:
|
|
96 A combination of the input file, event identifiers and population
|
|
97 identifiers.
|
|
98
|
|
99 MFI.txt:
|
|
100 Provides the mean fluorescence intensity for each population for each
|
|
101 marker/parameter
|
|
102
|
|
103 population_id.txt:
|
|
104 Contains population identifiers (i.e, values from [1 to n] where n is
|
|
105 the population assigned to the corresponding events in the input data
|
|
106 file, one identifier per row.)
|
|
107
|
|
108 population_center.txt:
|
|
109 Contains the centroid coordinates for each identified population
|
|
110
|
|
111 percentage.txt:
|
|
112 Includes the population identifiers and percentage of events within that
|
|
113 population (relative to the whole data file)
|
|
114
|
|
115 profile.txt:
|
|
116 Displays an expression profile, where the approximate expression level
|
|
117 for each marker is assigned a numeric value from 1-4, for each identified
|
|
118 population
|
|
119
|
|
120 fcs_properties.txt:
|
|
121 Contains the number of events, number of populations, and number of
|
|
122 markers, as well as the algorithm parameters used in the analysis
|
|
123
|
|
124 #############################################################################
|
|
125 # Running cent_adjust
|
|
126 #############################################################################
|
|
127 Running the cent_adjust algorithm generates 4 output files that have
|
|
128 generic file names. For this reason, it is recommened that one output
|
|
129 directory be created for one input file to the program.
|
|
130
|
|
131 mkdir example/output/FCS2/cent_adjust
|
|
132 cd example/output/FCS2/cent_adjust
|
|
133 /usr/local/flock/bin/cent_adjust ../population_center.txt ../coordinates.txt
|
|
134
|
|
135 Files created: MFI.txt, percentage.txt, population_id.txt and profile.txt
|
|
136
|
|
137 Usage Information for cent_adjust
|
|
138 ----------------------------------------------------------------------------
|
|
139 basic mode: cent_adjust input_center input_data_file
|