需要帮助根据R中的标准筛选矩阵吗
我是新手,所以我请求你的帮助。假设我有下面的矩阵需要帮助根据R中的标准筛选矩阵吗,r,matrix,R,Matrix,我是新手,所以我请求你的帮助。假设我有下面的矩阵 mat <- matrix(c(2,4,2,8, 1,4,11,9), 4) dimnames(mat)[[2]] <- c("x", "y") dimnames(mat)[[1]] <- c("a", "b", "c", "d") mat x y a 2 1 b 4 4 c 2 11 d 8 9 对于原始问题,您希望选择最小值>=5的行applywithmin将找到每行的最小值,用于选择。请注意,使用的矩阵不再与问题匹配
mat <- matrix(c(2,4,2,8, 1,4,11,9), 4)
dimnames(mat)[[2]] <- c("x", "y")
dimnames(mat)[[1]] <- c("a", "b", "c", "d")
mat
x y
a 2 1
b 4 4
c 2 11
d 8 9
对于原始问题,您希望选择最小值>=5的行
apply
withmin
将找到每行的最小值,用于选择。请注意,使用的矩阵不再与问题匹配
> mat1[apply(mat1, 1, min) >= 5,,drop=FALSE]
x y
c 7 8
对于已编辑的问题,使用平均值:
> mat[apply(mat, 1, mean) >= 5,,drop=FALSE]
x y
c 2 11
d 8 9
对于原始问题,您希望选择最小值>=5的行
apply
withmin
将找到每行的最小值,用于选择。请注意,使用的矩阵不再与问题匹配
> mat1[apply(mat1, 1, min) >= 5,,drop=FALSE]
x y
c 7 8
对于已编辑的问题,使用平均值:
> mat[apply(mat, 1, mean) >= 5,,drop=FALSE]
x y
c 2 11
d 8 9
mat[rowMeans(mat)<5,]#rowMeans比apply方法快得多
mat[rowMeans(mat)<5,]#rowMeans比apply方法快得多
不是求最小值,而是求平均值怎么样?我把“min”改为“avg”和“average”,但没有运气编辑:你赢了我。非常感谢。编辑。您需要函数mean
。与其求最小值,不如求平均值?我把“min”改为“avg”和“average”,但没有运气编辑:你赢了我。非常感谢。编辑。您需要函数mean
。