首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于r中数值表的顺序对字符列表进行升序排序

基于r中数值表的顺序对字符列表进行升序排序
EN

Stack Overflow用户
提问于 2014-04-27 23:20:34
回答 2查看 909关注 0票数 2

我想根据顺序/在另一个列表上排列结果来排列一个字符的列表。例如,给定一个list char和值(数字) mini列表,我可以得到排序char列表:

代码语言:javascript
复制
sorted<-mapply(function(x, y) y[x], lapply(mini, order), char)

我想使用排列/顺序来根据升序的char列表对min列表进行排序

(当mini中的值相同时,我希望占优势的字母字符)。

有什么建议吗?

编辑:虚拟示例

代码语言:javascript
复制
char <- list(A=c("dd", "aa", "cc", "ff"), B=c("rr", "ee", "tt", "aa"))
mini <- list(A=c(4,2,4,4), B=c(5,5,7,1))

char
$A
"dd" "aa" "cc" "ff" ...
$B
"rr" "ee" "tt" "aa" ...

mini
$A
4 2 4 4 ...
$B
5 5 7 1 ...

预期结果:

代码语言:javascript
复制
sorted
$A
"aa" "cc" "dd" "ff"
$B
"aa" "ee" "rr" "tt"
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-27 23:37:35

试试这个:

代码语言:javascript
复制
Map(function(x, y) y[order(x, y)], mini, char)
票数 4
EN

Stack Overflow用户

发布于 2014-04-27 23:43:46

代码语言:javascript
复制
lapply( names(char), function(nm) char[[nm]][order(mini[[nm]], char[[nm]])])
#------
[[1]]
[1] "aa" "cc" "dd" "ff"

[[2]]
[1] "aa" "ee" "rr" "tt"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23330244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档