首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >特定格式的打印列表

特定格式的打印列表
EN

Stack Overflow用户
提问于 2022-11-29 12:40:16
回答 2查看 24关注 0票数 0

我有一张有72个边框的单子。这是dput (其中只有5个)。

代码语言:javascript
复制
list(`1` = c(V1 = 7.426758, V2 = 47.398349, V3 = 7.8508356, V4 = 47.686178
), `10` = c(V1 = 7.8508356, V2 = 47.686178, V3 = 8.2749132, V4 = 47.974007
), `11` = c(V1 = 8.2749132, V2 = 47.686178, V3 = 8.6989908, V4 = 47.974007
), `12` = c(V1 = 8.6989908, V2 = 47.686178, V3 = 9.1230684, V4 = 47.974007
), `13` = c(V1 = 9.1230684, V2 = 47.686178, V3 = 9.547146, V4 = 47.974007
))

这是所需的输出:

代码语言:javascript
复制
c(7.4267580,47.3983490,7.8508356,47.6861780)

如何使用for循环在期望的输出中打印每个边界框?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-11-29 14:24:24

您将通过运行

代码语言:javascript
复制
dput(lapply(your_list, unname))

但是,如果您想将字符串化的向量保存到一个新的向量中,那么有一种更直接的方法,通过toString函数。首先,下面是toString对向量所做的操作:

代码语言:javascript
复制
toString(1 : 5)
# [1] "1, 2, 3, 4, 5"

太棒了!这几乎是我们想要的,我们只需要把它放到c(…)

代码语言:javascript
复制
paste0('c(', toString(1 : 5), ')')
# [1] "c(1, 2, 3, 4, 5)"

现在,我们需要将此操作应用于原始列表中的每个元素。vapply是这样做的:

代码语言:javascript
复制
result = vapply(your_list, \(x) paste0('c(', toString(x), ')'), character(1L))
票数 1
EN

Stack Overflow用户

发布于 2022-11-29 13:02:58

以下内容将以所需格式打印列表中的每个元素:

代码语言:javascript
复制
have <- list(`1` = c(V1 = 7.426758, V2 = 47.398349, V3 = 7.8508356, V4 = 47.686178
), `10` = c(V1 = 7.8508356, V2 = 47.686178, V3 = 8.2749132, V4 = 47.974007
), `11` = c(V1 = 8.2749132, V2 = 47.686178, V3 = 8.6989908, V4 = 47.974007
), `12` = c(V1 = 8.6989908, V2 = 47.686178, V3 = 9.1230684, V4 = 47.974007
), `13` = c(V1 = 9.1230684, V2 = 47.686178, V3 = 9.547146, V4 = 47.974007
))

for (item in have) {dput(unname(item))}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74614253

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档