Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要帮助根据R中的标准筛选矩阵吗_R_Matrix - Fatal编程技术网

需要帮助根据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
with
min
将找到每行的最小值,用于选择。请注意,使用的矩阵不再与问题匹配

> 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
with
min
将找到每行的最小值,用于选择。请注意,使用的矩阵不再与问题匹配

> 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