如何平整嵌套列表的两个维度?

Ada*_*ski 1 r list flatten

假设我有一个a如下构建的列表:

a1<-list(1,2,list("X",10))
a2<-list("A",list("B"),"C")
a3<-list(list("D",list("E")),3.14)
a<-list(a1,a2,a3)
Run Code Online (Sandbox Code Playgroud)

我怎样才能a变成这样:

list(1,2,list("X",10),"A",list("B"),"C",list("D",list("E")),3.14)
Run Code Online (Sandbox Code Playgroud)

我想,对于任意数量的有效的解决方案a1, a2, a3... an不仅为,a1, a2a3如上面的例子英寸

在Mathematica我会简单地使用Flatten[a,1],但是如何在R中做到这一点?

Jam*_*mes 5

使用unlistrecursive=FALSE:

dput(unlist(a,recursive=FALSE))
list(1, 2, list("X", 10), "A", list("B"), "C", list("D", list(
    "E")), 3.14)
Run Code Online (Sandbox Code Playgroud)