如何在R中反转一个列表?

3
我正在尝试使用函数list.reverse来反转列表。我运行了一个来自文档的例子。
x <- list(a=1,b=2,c=3)
list.reverse(x)

R返回一个错误信息:“Error in list.reverse(x) : could not find function "list.reverse"”。该错误与无法找到“list.reverse”函数有关。

你链接的页面展示了rlist包中的一个函数。你安装并加载了那个包吗?请编辑你的问题,除非你已经这样做了,否则不要抱怨文档。 - undefined
@Elin 你说得对。我还没有安装那个包。但是当文档链接上没有这样的信息时,我怎么知道要安装那个包呢? - undefined
页面右上角就在那里。 - undefined
@Elin 对不起,这是我的错。 - undefined
1
如果你把问题改写成“如何反转一个列表”,那么这就是一个合理的问题。 - undefined
1
你应该要么关闭这个问题,要么重写它,以便得到的答案有意义。另外请注意,你提供的网站并不是“官方”网站,而是由一家盈利公司运营的。 - undefined
2个回答

6
该函数是可行的。您还没有加载或安装。
尝试:
rlist::list.reverse(x)

#$c
#[1] 3

#$b
#[1] 2

#$a
#[1] 1

就像基本R语言一样,rev函数也会这样工作:

rev(x)

#$c
#[1] 3

#$b
#[1] 2

#$a
#[1] 1

3

尝试这个基本R解决方案:

#Data
x <- list(a=1,b=2,c=3)
#Reverse
x[rev(1:length(x))]

输出:

$c
[1] 3

$b
[1] 2

$a
[1] 1

使用您提到的函数,首先要加载该包:

library(rlist)
#Code
x <- list(a=1,b=2,c=3)
list.reverse(x)

输出:

$c
[1] 3

$b
[1] 2

$a
[1] 1

1
rev()在列表上起作用,所以你的第一个建议过于复杂了。也许在旧版本的R中不是这样的情况吗? - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接