我有一个很大的矩阵,像这样:
NCols=100
NRows=100
myMat<-matrix(runif(NCols*NRows), ncol=NCols)
我感兴趣的是找出哪一行和哪一列的值最接近矩阵所有值的平均值或中值,计算方法为 mean(myMat)
。
我如何在 R
中执行此操作?
最佳答案
试试这个:
set.seed(45) # just for reproducibility
NCols <- 100
NRows <- 100
myMat <- matrix(runif(NCols*NRows), ncol=NCols)
mat_minus_mean <- abs(myMat - mean(myMat))
idx <- which(mat_minus_mean == min(mat_minus_mean), arr.ind = TRUE)
# row col
# [1,] 5 33
> myMat[idx]
# [1] 0.5012305 # mean(myMat) is 0.5012474
关于r - 如何找到具有最接近其均值的矩阵的行和列?在 R,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15345009/