} else {
shownDataFiles = nonReferenceDataFiles;
}
for (int row = 0, rowIndex = 0; row < peakList.getNumberOfRows(); row++) {
PeakListRow rowPeak = peakList.getRow(row);
if (!onlyIdentified
|| (onlyIdentified && rowPeak.getPeakIdentities().length > 0)) {
// Average area or height of the reference group
double referenceAverage = 0;
int referencePeakCount = 0;
for (int column = 0; column < referenceDataFiles.size(); column++) {
if (rowPeak.getPeak(referenceDataFiles.get(column)) != null) {
if (area) {
referenceAverage += rowPeak.getPeak(
referenceDataFiles.get(column)).getArea();
} else {
referenceAverage += rowPeak.getPeak(
referenceDataFiles.get(column)).getHeight();
}
referencePeakCount++;
}
}
if (referencePeakCount > 0) {
referenceAverage /= referencePeakCount;
}
// Divide the area or height of each peak by the average of the
// area or height of the reference peaks in each row
for (int column = 0; column < shownDataFiles.size(); column++) {
double value = Double.NaN;
if (rowPeak.getPeak(shownDataFiles.get(column)) != null) {
ChromatographicPeak peak = rowPeak
.getPeak(shownDataFiles.get(column));
if (area) {
value = peak.getArea() / referenceAverage;
} else {