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
R:根据元素中的值对列表进行排序,理想情况下是使用purr/tidyverse的某个链接_R_Sorting_Tidyverse_Purrr - Fatal编程技术网

R:根据元素中的值对列表进行排序,理想情况下是使用purr/tidyverse的某个链接

R:根据元素中的值对列表进行排序,理想情况下是使用purr/tidyverse的某个链接,r,sorting,tidyverse,purrr,R,Sorting,Tidyverse,Purrr,我希望根据条件在列表中排列项目,就像dplyr::arrange对data.frames所做的那样(同时保持链接语法) 我希望这样的东西存在,但没能找到 编辑:为了清晰起见,我删除了变量“l” EDIT2:无法更改为沿路径的TIBLE,以使用dplyr::arrange,因为元素可能不支持此功能,或者它们可能没有匹配的名称您可以取消列表,排序,然后使用重新列表将其放回相同的结构中 relist(sort(unlist(l)), l) #[[1]] #[[1]]$foo #[1] "bar"

我希望根据条件在列表中排列项目,就像dplyr::arrange对data.frames所做的那样(同时保持链接语法)

我希望这样的东西存在,但没能找到

编辑:为了清晰起见,我删除了变量“l”


EDIT2:无法更改为沿路径的TIBLE,以使用dplyr::arrange,因为元素可能不支持此功能,或者它们可能没有匹配的名称

您可以
取消列表
排序
,然后使用
重新列表
将其放回相同的结构中

relist(sort(unlist(l)), l)

#[[1]]
#[[1]]$foo
#[1] "bar"


#[[2]]
#[[2]]$foo
#[1] "baz"


#[[3]]
#[[3]]$foo
#[1] "test"

我还可以获取$foo,订购它,然后根据该索引重新订购。但是我需要能够将它与其他tidyverse方法Callssory链接起来,我没有得到它。当前方法存在什么问题?如果你想使用管道,你可以做
l%>%unlist%>%sort%>%relist(l)
是的,就像那样,只需要在第一个地方没有一个“l”。我本来可以说得更清楚的。我将有一个任意长度的方法调用链,我想在某个时候重新排列。我在问是否有一种整洁的方式可以做到这一点。这意味着您不需要停下来保存数据,然后重新排列。当然,在本例中,但对于一般方法,它不会在更改backSo之前将数据更改为TIBLE。您不想转换为TIBLE进行排序吗?你能把所有的限制都写在你的原始帖子里吗?这样回答的人就明白了。
relist(sort(unlist(l)), l)

#[[1]]
#[[1]]$foo
#[1] "bar"


#[[2]]
#[[2]]$foo
#[1] "baz"


#[[3]]
#[[3]]$foo
#[1] "test"