Description
这个R包实现了Yang, Dai和Pan (2023)提出的块对角(BD)精度矩阵正则化方法,用于超高维数据的精度矩阵估计。
Installation
首先,安装必要的依赖包:
install.packages(c("Matrix", "glasso", "MASS"))
然后,你可以从 GitHub 安装开发版本 (需要 devtools
包):
# install.packages("devtools")
# devtools::install_github("likangmax/BDprecision") # 请确保将 'likangmax' 替换为你的实际 GitHub 用户名
主要特点 (Key Features)
- 使用协方差列筛选(CCS)方法识别显著相关的变量子组
- 估计块对角结构的精度矩阵,其中只保留显著相关子组的协方差
- 在处理超高维数据(p >> n)时计算效率高
- 支持自适应阈值协方差矩阵估计
使用示例 (Example Usage)
运行内置示例:
library(BDprecision)
# 运行示例
bd_example()
# 自定义参数的示例
bd_example(n = 30, p = 2000, block_size = 15, rho = 0.4)
直接使用函数进行分析:
# 生成模拟数据
sim_data <- simulate_block_data(n = 50, p = 1000, block_size = 20, rho = 0.3)
# 估计精度矩阵
bd_result <- bd_precision(sim_data$X)
# 评估结果
metrics <- evaluate_precision(sim_data$Omega, bd_result$Omega)
print(metrics)
函数说明 (Functions)
bd_precision()
: 主函数,使用块对角正则化估计精度矩阵ccs()
: 协方差列筛选过程,识别显著相关的变量子组adaptive_thresholding()
: 使用自适应阈值方法估计协方差矩阵evaluate_precision()
: 评估精度矩阵估计的性能simulate_block_data()
: 生成带有块结构的模拟数据bd_example()
: 展示包功能的示例函数
参考文献 (References)
Yang, Y., Dai, H., & Pan, J. (2023). Block-diagonal precision matrix regularization for ultra-high dimensional data. Computational Statistics and Data Analysis, 179, 107630. DOI: 10.1016/j.csda.2022.107630