aboutsummaryrefslogtreecommitdiff
path: root/r_qtl
AgeCommit message (Collapse)Author
2024-08-28Fix imports, and minor bugs.Frederick Muriuki Muriithi
2024-08-12Bug: Ensure file type values are lists.Frederick Muriuki Muriithi
2024-08-12Update check for missing files: Check from directory.Frederick Muriuki Muriithi
Enable the check for missing files to act upon a directory where the R/qtl2 bundle has been extracted into.
2024-08-12Add utility to transpose CSVs, renaming the original file.Frederick Muriuki Muriithi
2024-08-12Define new InvalidValue error type.Frederick Muriuki Muriithi
Redesign the InvalidValue error type for the R/qtl2 bundles to list the errors according to the row and column titles rather than line numbers. This makes the error-reporting independent on whether or not the file is transposed. This will replace the use of the older `quality_control.errors.InvalidValue` error type that depends on the line and column numbers, and thus cannot work with transposable files.
2024-08-12Rename module: Module contains exceptions classes.Frederick Muriuki Muriithi
2024-08-09Read R/qtl2 control data from a directory with extracted files.Frederick Muriuki Muriithi
2024-08-08Function to transpose CSV files.Frederick Muriuki Muriithi
Some files come in a transposed form, so we need to transpose them again in order to use the same processing code for all files.
2024-08-08Add utility function to extract R/qtl2 zip bundlesFrederick Muriuki Muriithi
2024-06-20Check for special files that might share names/extensionsFrederick Muriuki Muriithi
Check for special files and hidden files that might be inadvertently added to the zip bundle by the operating system in use that might share names and/or extensions with the main bundle files.
2024-02-21Check that samples/cases are consistentFrederick Muriuki Muriithi
Ensure that **ALL** samples/cases/individuals mentioned in any of the pheno files actually exist in at least one of the geno files.
2024-02-20Track filename in the errorsFrederick Muriuki Muriithi
R/qtl2 bundles can contain more than one file, of the same type. When errors are encountered in any of the files, we need to be able to inform the user which file it is, in addition to the line and column number.
2024-02-20Generalise fetching of samples/cases/individuals.Frederick Muriuki Muriithi
2024-02-20Read samples from geno file.Frederick Muriuki Muriithi
2024-02-20Read each file separatelyFrederick Muriuki Muriithi
Provide the function 'read_file_data' in the 'r_qtl.r_qtl2' module to read each file in the bundle separately. The function 'file_data' in the 'r_qtl.r_qtl2' module reads *ALL* the files of a particular type (e.g. geno files) and returns a single generator object with the data from *ALL* the files. This does not render itself very useful for error checking. We needed a way to check for errors, and report them for each and every file in the bundle, for easier tracking and fixing.
2024-02-20Stand-alone function to read control fileFrederick Muriuki Muriithi
Add a function that, given the path to the zip file, will read the control data. It creates its own context manager.
2024-02-16Replace genotype codes with values in control file.Frederick Muriuki Muriithi
2024-02-16Convert missing value codes to NoneFrederick Muriuki Muriithi
2024-02-16Strip comment lines.Frederick Muriuki Muriithi
2024-02-16Read raw text data from a file in the zip bundleFrederick Muriuki Muriithi
2024-02-13Make "FILE_TYPES" part of public interface for module/package.Frederick Muriuki Muriithi
2024-02-12Refactor: Use new decimal places checker.Frederick Muriuki Muriithi
2024-02-12Check for errors in the 'phenose' file.Frederick Muriuki Muriithi
2024-02-12Provide the key for each file listed in the control file.Frederick Muriuki Muriithi
2024-02-08Generalise error retrieval: extract common structureFrederick Muriuki Muriithi
Extract the common structure into a separate function and pass in checkers that return the errors they find.
2024-02-08Use error objects rather than plain tuple values.Frederick Muriuki Muriithi
2024-02-06Check that pheno values are numerical and at least 3 decimal placesFrederick Muriuki Muriithi
2024-02-05Check that data in geno file is validFrederick Muriuki Muriithi
Add a function to ensure the values in the geno files are all listed in the control data under the "genotypes" key.
2024-02-05Fix linting and type errors.Frederick Muriuki Muriithi
2024-02-05Do general bundle validation and show errorsFrederick Muriuki Muriithi
* Display any and all errors on the UI * Move `validate_bundle` to QC module and refactor to use `missing_files`
2024-02-05Retrieve list of all files, and list of missing filesFrederick Muriuki Muriithi
Add QC a function to list all files listed in the control file, and another to list only the files missing from the bundle.
2024-02-02List file types in a single place for easier reuseFrederick Muriuki Muriithi
2024-02-02Ensure control file defaults are set up in code.Frederick Muriuki Muriithi
2024-01-16Provide defaults for various control variablesFrederick Muriuki Muriithi
`na.strings` has a default value of "NA" as stated in https://kbroman.org/qtl2/assets/vignettes/input_files.html#CSV_files quote: > Missing value codes will be specified in the control file (as > na.strings, with default value "NA") and will apply across all > files, so a missing value code for one file cannot be an allowed > value in another file. for `comment.char` > The CSV files can include a header with a set of comment lines > initiated by a value specified in the control file as comment.char > (with default value "#"). for `sep`: The default separator is expected to be the comma, as stated in https://kbroman.org/qtl2/assets/vignettes/input_files.html#field-separator quote: > If the data files use a separator other than a comma ...
2024-01-15Process `na.strings` even for default casesFrederick Muriuki Muriithi
There was a bug where the `na.strings` were not processed correctly if the user called the `r_qtl.r_qtl2.file_data(...)` function without explicitly providing the `process_*` arguments. This commit fixes that.
2024-01-15Extract common functional tools to separate package.Frederick Muriuki Muriithi
2024-01-10Provide convenience functions to avoid subtle call errorsFrederick Muriuki Muriithi
2024-01-10Make identifier column name explicitFrederick Muriuki Muriithi
Since the R/qtl2 bundle generator could name the identifier column anything, this commit converts the incoming identifier column name into something explicit that we know and can use.
2024-01-09Raise exception on reading non-existing fileFrederick Muriuki Muriithi
The validation checks ensure that whatever files are listed in the control file exist in the zip file bundle. It is still possible, however, that the code tries to read a file that does not exist in the file and is not listed in the control file. In those cases, raise the appropriate exception.
2024-01-08Upload R/qtl2 zip bundle and check for errors.Frederick Muriuki Muriithi
2024-01-04Parse sex information from R/qtl bundle.Frederick Muriuki Muriithi
2024-01-04Parse cross information from R/qtl2 bundle.Frederick Muriuki Muriithi
2024-01-04Process sex and cross information data in "covar" files.Frederick Muriuki Muriithi
2024-01-04Parse multiple files with same file key.Frederick Muriuki Muriithi
2024-01-03Use generic parser. Remove obsoleted functions.Frederick Muriuki Muriithi
2024-01-03Parse founder_geno files. Generalise parsing files.Frederick Muriuki Muriithi
* Add tests for parsing "founder_geno" files * Extract common file parsing structure out to more general function * Use generic function to parse "founder_geno" file in test
2024-01-03Parse the phenotype data from the R/qtl2 bundle.Frederick Muriuki Muriithi
2024-01-03Rename argument and add documentation to functions.Frederick Muriuki Muriithi
2024-01-03Extract processing of transposed files into reusable function.Frederick Muriuki Muriithi
The processing of transposed files is similar across files. This commit extracts the common parts into a separate function.
2024-01-03Refactor: Extract potentially reusable functionsFrederick Muriuki Muriithi
The processing of transposed files is probably going to be very similar, thus the need to extract some reusable code from the geno-file-specific function in preparation.