Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/78.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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_Sorting_Matrix - Fatal编程技术网

对矩阵中的一行进行排序,使列名称与R中的结果矩阵保持一致

对矩阵中的一行进行排序,使列名称与R中的结果矩阵保持一致,r,sorting,matrix,R,Sorting,Matrix,假设我有一个矩阵,其中一行X=25773作为元素。这些元素隐式地具有列名V1-V4。我想对这些元素进行排序,一旦排序,它们还必须携带它们的列名,即V1-V4。在本例中,一旦排序,我将需要一个矩阵,该矩阵将元素排序为Y=2 3 5 7,作为第二行,第一行是V1 V4 V2 V3。谢谢。使用维度索引时,列名将随列数据自然移动: m <- matrix(c(V1=2,5,7,3),1,4,dimnames=list(NULL,c('V1','V2','V3','V4'))); m; ##

假设我有一个矩阵,其中一行X=25773作为元素。这些元素隐式地具有列名V1-V4。我想对这些元素进行排序,一旦排序,它们还必须携带它们的列名,即V1-V4。在本例中,一旦排序,我将需要一个矩阵,该矩阵将元素排序为Y=2 3 5 7,作为第二行,第一行是V1 V4 V2 V3。谢谢。

使用维度索引时,列名将随列数据自然移动:

m <- matrix(c(V1=2,5,7,3),1,4,dimnames=list(NULL,c('V1','V2','V3','V4')));
m;
##      V1 V2 V3 V4
## [1,]  2  5  7  3
m <- m[,order(m[1,]),drop=F];
m;
##      V1 V4 V2 V3
## [1,]  2  3  5  7

m抱歉@akrun那是个错误。我在问题中更正了它。我认为结果的colname应该是
V1 V4 V2 V3
@akrun不,我没有得到这样的结果。ColName始终保持为V1 V2 3 V4,即使在对数字进行分类之后。我认为您可能必须显示一个小的可复制示例,并显示预期结果,因为我对描述感到困惑。谢谢@bggoldst。但我忘了提到我的矩阵是314X16000。所以我需要对它们进行单独排序,并且我必须知道它们各自的索引。在您的示例中,显式提供DIMNAME。如果我把它们拿出来,那么最后的m仍然给我V1 V2 V4。在我的矩阵中,所有16K列都必须进行排序,我需要知道它们各自的索引。解决这个问题的最好办法是什么?