Cargando…
mbend: an R package for bending non-positive-definite symmetric matrices to positive-definite
BACKGROUND: R package mbend was developed for bending symmetric non-positive-definite matrices to positive-definite (PD). Bending is a procedure of transforming non-PD matrices to PD. The covariance matrices used in multi-trait best linear unbiased prediction (BLUP) should be PD. Two bending methods...
Autor principal: | |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
BioMed Central
2020
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7469428/ https://www.ncbi.nlm.nih.gov/pubmed/32883199 http://dx.doi.org/10.1186/s12863-020-00881-z |
_version_ | 1783578425541263360 |
---|---|
author | Nilforooshan, Mohammad Ali |
author_facet | Nilforooshan, Mohammad Ali |
author_sort | Nilforooshan, Mohammad Ali |
collection | PubMed |
description | BACKGROUND: R package mbend was developed for bending symmetric non-positive-definite matrices to positive-definite (PD). Bending is a procedure of transforming non-PD matrices to PD. The covariance matrices used in multi-trait best linear unbiased prediction (BLUP) should be PD. Two bending methods are implemented in mbend. The first is an unweighted bending with small positive values in a descending order replacing negative eigenvalues (LRS14), and the second method is a weighted (precision-based) bending with a custom small positive value (ϵ) replacing smaller eigenvalues (HJ03). Weighted bending is beneficial, as it relaxes low precision elements to change and it reduces or prohibits the change in high precision elements. Therefore, a weighted version of LRS14 was developed in mbend. In cases where the precision of matrix elements is unknown, the package provides an unweighted version of HJ03. Another unweighted bending method (DB88) was tested, by which all eigenvalues are changed (eigenvalues less than ϵ replaced with 100 × ϵ), and it is originally designed for correlation matrices. RESULTS: Different bending procedures were conducted on a 5 × 5 covariance matrix (V), V converted to a correlation matrix (C) and an ill-conditioned 1000 × 1000 genomic relationship matrix (G). Considering weighted distance statistics between matrix elements before and after bending, weighting considerably improved the bending quality. For weighted and unweighted bending of V and C, HJ03–4 (HJ03, ϵ = 10(−4)) performed the best. HJ03–2 (HJ03, ϵ = 10(−2)) ranked better than LRS14 for V, but not for C. Though the differences were marginal, LRS14 performed the best for G. DB88–4 (DB88, ϵ = 10(−4)) was used for unweighted bending and it ranked the last. This method could perform considerably better with a lower ϵ. CONCLUSIONS: R package mbend provides necessary tools for transforming symmetric non-PD matrices to PD, using different methods and parameters. There were benefits in both weighted bending and small positive values in a descending order replacing negative eigenvalues. Thus, weighted LRS14 was implemented in mbend. Different bending methods might be preferable for different matrices, depending on the matrix type (covariance vs. correlation), number and the magnitude of negative eigenvalues, and the matrix size. |
format | Online Article Text |
id | pubmed-7469428 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2020 |
publisher | BioMed Central |
record_format | MEDLINE/PubMed |
spelling | pubmed-74694282020-09-03 mbend: an R package for bending non-positive-definite symmetric matrices to positive-definite Nilforooshan, Mohammad Ali BMC Genet Software BACKGROUND: R package mbend was developed for bending symmetric non-positive-definite matrices to positive-definite (PD). Bending is a procedure of transforming non-PD matrices to PD. The covariance matrices used in multi-trait best linear unbiased prediction (BLUP) should be PD. Two bending methods are implemented in mbend. The first is an unweighted bending with small positive values in a descending order replacing negative eigenvalues (LRS14), and the second method is a weighted (precision-based) bending with a custom small positive value (ϵ) replacing smaller eigenvalues (HJ03). Weighted bending is beneficial, as it relaxes low precision elements to change and it reduces or prohibits the change in high precision elements. Therefore, a weighted version of LRS14 was developed in mbend. In cases where the precision of matrix elements is unknown, the package provides an unweighted version of HJ03. Another unweighted bending method (DB88) was tested, by which all eigenvalues are changed (eigenvalues less than ϵ replaced with 100 × ϵ), and it is originally designed for correlation matrices. RESULTS: Different bending procedures were conducted on a 5 × 5 covariance matrix (V), V converted to a correlation matrix (C) and an ill-conditioned 1000 × 1000 genomic relationship matrix (G). Considering weighted distance statistics between matrix elements before and after bending, weighting considerably improved the bending quality. For weighted and unweighted bending of V and C, HJ03–4 (HJ03, ϵ = 10(−4)) performed the best. HJ03–2 (HJ03, ϵ = 10(−2)) ranked better than LRS14 for V, but not for C. Though the differences were marginal, LRS14 performed the best for G. DB88–4 (DB88, ϵ = 10(−4)) was used for unweighted bending and it ranked the last. This method could perform considerably better with a lower ϵ. CONCLUSIONS: R package mbend provides necessary tools for transforming symmetric non-PD matrices to PD, using different methods and parameters. There were benefits in both weighted bending and small positive values in a descending order replacing negative eigenvalues. Thus, weighted LRS14 was implemented in mbend. Different bending methods might be preferable for different matrices, depending on the matrix type (covariance vs. correlation), number and the magnitude of negative eigenvalues, and the matrix size. BioMed Central 2020-09-03 /pmc/articles/PMC7469428/ /pubmed/32883199 http://dx.doi.org/10.1186/s12863-020-00881-z Text en © The Author(s) 2020 Open AccessThis article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/. The Creative Commons Public Domain Dedication waiver (http://creativecommons.org/publicdomain/zero/1.0/) applies to the data made available in this article, unless otherwise stated in a credit line to the data. |
spellingShingle | Software Nilforooshan, Mohammad Ali mbend: an R package for bending non-positive-definite symmetric matrices to positive-definite |
title | mbend: an R package for bending non-positive-definite symmetric matrices to positive-definite |
title_full | mbend: an R package for bending non-positive-definite symmetric matrices to positive-definite |
title_fullStr | mbend: an R package for bending non-positive-definite symmetric matrices to positive-definite |
title_full_unstemmed | mbend: an R package for bending non-positive-definite symmetric matrices to positive-definite |
title_short | mbend: an R package for bending non-positive-definite symmetric matrices to positive-definite |
title_sort | mbend: an r package for bending non-positive-definite symmetric matrices to positive-definite |
topic | Software |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7469428/ https://www.ncbi.nlm.nih.gov/pubmed/32883199 http://dx.doi.org/10.1186/s12863-020-00881-z |
work_keys_str_mv | AT nilforooshanmohammadali mbendanrpackageforbendingnonpositivedefinitesymmetricmatricestopositivedefinite |