MCPcopy Create free account
hub / github.com/BoevaLab/FREEC / get_median

Function get_median

src/myFunc.cpp:123–135  ·  view source on GitHub ↗

Calculate median across individuals ---------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

121// Calculate median across individuals
122// ---------------------------------------------------------------------------
123float get_median(const std::vector<float> & myvector) {
124 vector<float> data (myvector);
125 int ndatapoints = data.size();
126 if (ndatapoints==0) {
127 cerr << "Error: zero values to calculate medians..\n";
128 exit(-1);
129 }
130 sort(data.begin(),data.end());
131 // Get median
132 float median_value = ndatapoints % 2 == 1 ? data[(ndatapoints-1)/2] : (data[ndatapoints/2 - 1] + data[ndatapoints/2])/float(2.0);
133 data.clear();
134 return median_value;
135}
136
137float get_medianNotNA(const std::vector<float> & myvector) {
138 vector<float> data (myvector);

Callers 15

get_quartilesFunction · 0.85
GenomeDensityMethod · 0.85
calculateMedianAroundMethod · 0.85
getMedianRatioMethod · 0.85
getMedianCopyNumberMethod · 0.85
calculateSDAndMedMethod · 0.85
evaluateContaminationMethod · 0.85
removeLargeExonsMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected