r - 如何在R中的循环中创建子列表
问题描述
我在 while 循环中有一个 for 循环。每次 while 迭代后,我递增 1(count = 1 然后 count = 2 ...)每次 for 迭代我返回几个变量。(a = 1,b = 2)
我想创建一个 count = 1..4 的列表,然后是每个 for 迭代(i),然后是我在 for 循环中创建的变量。例子:
List$Count1$Iter1$a
List$Count2$Iter2$a
List$Count4$Iter3$b
在下面的示例中,我想要一个名为“out”的列表:
out$(W_count)1...4$(Iter)1...5$A,B
我知道代码有几个问题,但我找不到解决这个问题的正确方法。
count = 1
while( count < 5 ) {
for(i in 1:5) {
b = i * i
a = b * 2
out = list(W_count = count)
out[[count]] = list(iter = i)
out[[count]][[i]] = list(A = a, B = b)
count = count + 1
}
}
解决方案
如果我理解正确,
out <- list()
count = 1
while( count < 5 ) {
for(i in 1:5) {
b = i * i
a = b * 2
out[[paste0("W_count",count)]][[paste0("Iter",i)]] <-list(A = a, B = b)
}
count = count + 1
}
给,
> out$W_count1$Iter1$A
[1] 2
> out$W_count2$Iter2$A
[1] 8
> out$W_count4$Iter3$B
[1] 9
推荐阅读
- javascript - 如何键入其 props 被部分应用的 React 组件?
- javascript - https://graph.microsoft.com/v1.0/me 给 404
- html - HTML 模式验证 RegExp 在 chrome 中不起作用
- javascript - d3js v5:无法弄清楚如何使用 Observable 笔记本
- powershell - Get-ADUser 不返回值
- javascript - 更改多个图像的图像 src
- java - Java - 对象列表更改以前的元素
- javascript - 为 flatlist 的所有项目创建单个状态数组。(反应原生)
- python - python中参数未知的单样本Cramer-VonMises测试
- java - Java DateTimeFormatter 在时区为 +0000 时添加 Z