我已经获得有关如何在列表中创建一组列表的帮助,但是我无法添加另一层/无法扩展列表的深度。我想要的是在每个列表中添加一个最终的“层”,其读为“ DataFrame”,“ DataFrame2”,依此类推。目前我有:
Layer1 = c('AA', 'BB', 'CC', 'DD')
myList=setNames(as.list(Layer1),Layer1)
myList=lapply(myList, function(x){
setNames(vector("list",length(Layer1)),paste0(x," vs ",Layer1))
})
其中每个列表中都包含myList
,AA
,BB
和CC
的{{1}},是另外一个列表,例如DD
,AA vs BB
等,或者在AA vs BB
的情况下,内部列表将读取BB
,BB vs AA
(以下称为BB vs BB
文件),依此类推。
所以我认为我可以通过按照...的方式做一些事情来轻松地为此添加一个附加层。
?? vs ??
我曾经天真地尝试使用Layer1 = c('AA', 'BB', 'CC', 'DD')
Layer3 = c('DataFrame', 'DataFrame2', 'Matrix', 'Matrix2')
myList=setNames(as.list(Layer1),Layer1)
myList=lapply(myList, function(x){
setNames(vector("list",length(Layer1)),paste0(x," vs ",Layer1))
myList[i]=lapply(myList, function(x){
setNames(vector("list",length(Layer3)),Layer3)
})
})
(我知道那是行不通的,但是我不确定自己是否会做任何事情)指示我要移至层并开始添加空白myList[i]
和DataFrame
向量(到我的Matrix
子列表中),以便我拥有“空插槽”(可以这么说),以便将来将数据移入。 / p>
最终,我希望每个?? vs ??
文件夹都包含一个空白的?? vs ??
,DataFrame
,DataFrame2
,Matrix
。
答案 0 :(得分:1)
@import 'themes';
// framework component themes (styles tied to theme variables)
@import '~@nebular/theme/styles/globals';
@import '~@nebular/auth/styles/all';
// loading progress bar theme
@import './pace.theme.scss';
// install the framework and custom global styles
@include nb-install() {
// framework global styles
@include nb-theme-global();
@include nb-auth-global();
// loading progress bar
@include ngx-pace-theme();
.custom-control .custom-control-indicator {
border-radius: 50%; // TODO: quickfix for
https://github.com/akveo/nebular/issues/275
}
};
遍历类似结构的列表的每个元素,并对其应用函数。值得注意的是,它不不包含位置参数。
您想要做的是:
lapply
的所有元素,并为每个元素创建一个列表,依次列出Layer1
个元素,其中每个元素都包含Layer1
中提供的元素数量代码
Layer3
Layer1 <- c('AA', 'BB', 'CC', 'DD') Layer3 <- c('DataFrame', 'DataFrame2', 'Matrix', 'Matrix2') my_list <- lapply(Layer1, function(el_layer1_outer) { ## create a list with |Layer1| elements ## this we do by creating first an inner list vector(.) ## and the repeating it |Layer1| times ret <- rep(list(setNames(vector("list", length(Layer3)), Layer3)), length(Layer1)) setNames(ret, ## ret has no proper names yet paste(el_layer1_outer, "vs.", Layer1)) }) names(my_list) <- Layer1 ## could have been done with setNames as well str(my_list)