如何在R中使用for循环,而不是通过保留其行名在矩阵中应用
我有一个矩阵“acc”,按年份排列成行如何在R中使用for循环,而不是通过保留其行名在矩阵中应用,r,for-loop,matrix,R,For Loop,Matrix,我有一个矩阵“acc”,按年份排列成行 J F M 1989 438.1 364.9 400.9 1990 359.3 397.9 272.0 1991 295.3 309.8 297.8 如果我使用apply对列进行排序,R无法将行名作为矩阵保存,因此我需要将它们逐个排列,以保持如下状态: J F M 1991 295.3 1991 309.8
J F M
1989 438.1 364.9 400.9
1990 359.3 397.9 272.0
1991 295.3 309.8 297.8
如果我使用apply对列进行排序,R无法将行名作为矩阵保存,因此我需要将它们逐个排列,以保持如下状态:
J F M
1991 295.3 1991 309.8 1990 272.0
1990 359.3 1989 364.9 1991 297.8
1989 438.1 1990 397.9 1989 400.9
J<-sort(acc[,1])
F<-sort(acc[,2])
M<-sort(acc[,3])
我必须按列执行排序函数,但要保留它们的行名,因此我要执行许多类似以下的数组:
J F M
1991 295.3 1991 309.8 1990 272.0
1990 359.3 1989 364.9 1991 297.8
1989 438.1 1990 397.9 1989 400.9
J<-sort(acc[,1])
F<-sort(acc[,2])
M<-sort(acc[,3])
J要执行所需操作,可以先保存行名,按列排序,然后重新分配行名
首先是一个测试数据集
acc <- matrix(30:1, nrow = 10)
rownames(acc) <- paste("Year", 1:10, sep = ".")
acc您能分享最少的数据并显示预期输出吗?我再次编辑问题,谢谢您的帮助