In flow_auto_qc the call to
|
goodfcs <- flowFrame(exprs = sub_exprs[goodCellIDs, ], parameters = params, description = keyval) |
might fail.
- If
goodCellIDs is integer(0) because sub_exprs[goodCellIDs, ] is a matrix of 0 rows.
- If it is just an event (for example goodCellIDs == 1) because the matrix is converted to a numeric vector (
is.null(dim(sub_exprs[1, ]))).
Both cases stop with errors "The actual number of cells in data section (1) is not consistent with keyword '$TOT' (0)" and "Argument 'exprs' must be numeric matrix with colnames attribute set".
These problems might bee in other functions and be behind #4: not a single event got through the QC checks (which I find very surprising and might require further look into the data).
This can be triggered using the default parameters with a bad file.
I can submit a patch if you wish (note that there have been changes in the git repository of Bioconductor with the branch rename).
My proposed solution is:
- Provide an informative error message or warning
- Add
drop = FALSE in the call sub_expres[goodCellIDs, , drop = FALSE].
In
flow_auto_qcthe call toflowAI/R/auto-qc.R
Line 313 in 2af15bd
goodCellIDsisinteger(0)because sub_exprs[goodCellIDs, ] is a matrix of 0 rows.is.null(dim(sub_exprs[1, ]))).Both cases stop with errors "The actual number of cells in data section (1) is not consistent with keyword '$TOT' (0)" and "Argument 'exprs' must be numeric matrix with colnames attribute set".
These problems might bee in other functions and be behind #4: not a single event got through the QC checks (which I find very surprising and might require further look into the data).
This can be triggered using the default parameters with a bad file.
I can submit a patch if you wish (note that there have been changes in the git repository of Bioconductor with the branch rename).
My proposed solution is:
drop = FALSEin the callsub_expres[goodCellIDs, , drop = FALSE].