【问题标题】:create a list with named elements from a vector in R从R中的向量创建一个包含命名元素的列表
【发布时间】:2021-07-16 16:06:10
【问题描述】:

我有一个包含值的列表:

dput(myList)
c(0.0898622512550198, 0.11279867694455, 0.118207351215154, 0.11387688729519, 
0.107475777580094, 0.0978646723731254, 0.0969206089406942, 0.0904132246563475, 
0.0874010329312702, 0.0851795168085549, 0.0912176138508748, 0.115360624813346, 
0.116319185630924, 0.108868479111444, 0.106497553220917, 0.100329529935384, 
0.100506383748778, 0.0903440283321124, 0.0865722427282429, 0.0839843586279759, 
0.247704164776991, 0.239714405781785, 0.224768974082658, 0.22197405630611, 
0.211572723754998, 0.195401811037928, 0.17649534064794, 0.167367753871929, 
0.156391127606193, 0.158609642133469, 0.251245429897636, 0.238603834194235, 
0.224373763126016, 0.211123857521077, 0.193058745960675, 0.183466166744115, 
0.177458733117471, 0.171312413678609, 0.165130750538431, 0.184226305221733
)

但是,我想将其转换为列表格式,其中插入的 0 将是 myList 中的值。我尝试用 lapply 和 sapply 来做这件事,但无法达到预期的结果。

[[1]]
[[1]]$value
[1] 0


[[2]]
[[2]]$value
[1] 0


[[3]]
[[3]]$value
[1] 0


[[4]]
[[4]]$value
[1] 0


[[5]]
[[5]]$value
[1] 0


[[6]]
[[6]]$value
[1] 0


[[7]]
[[7]]$value
[1] 0


[[8]]
[[8]]$value
[1] 0


[[9]]
[[9]]$value
[1] 0


[[10]]
[[10]]$value
[1] 0


[[11]]
[[11]]$value
[1] 0


[[12]]
[[12]]$value
[1] 0


[[13]]
[[13]]$value
[1] 0


[[14]]
[[14]]$value
[1] 0


[[15]]
[[15]]$value
[1] 0


[[16]]
[[16]]$value
[1] 0


[[17]]
[[17]]$value
[1] 0


[[18]]
[[18]]$value
[1] 0


[[19]]
[[19]]$value
[1] 0


[[20]]
[[20]]$value
[1] 0


[[21]]
[[21]]$value
[1] 0


[[22]]
[[22]]$value
[1] 0


[[23]]
[[23]]$value
[1] 0


[[24]]
[[24]]$value
[1] 0


[[25]]
[[25]]$value
[1] 0


[[26]]
[[26]]$value
[1] 0


[[27]]
[[27]]$value
[1] 0


[[28]]
[[28]]$value
[1] 0


[[29]]
[[29]]$value
[1] 0


[[30]]
[[30]]$value
[1] 0


[[31]]
[[31]]$value
[1] 0


[[32]]
[[32]]$value
[1] 0


[[33]]
[[33]]$value
[1] 0


[[34]]
[[34]]$value
[1] 0


[[35]]
[[35]]$value
[1] 0


[[36]]
[[36]]$value
[1] 0


[[37]]
[[37]]$value
[1] 0


[[38]]
[[38]]$value
[1] 0


[[39]]
[[39]]$value
[1] 0


[[40]]
[[40]]$value
[1] 0

有什么建议吗?

【问题讨论】:

  • as.list(myList)
  • 但是 $value 丢失了@RonakShah

标签: r list vector


【解决方案1】:

您可以使用as.listlapply 来获得完全相同的输出:

lapply(as.list(myList), function(x) setNames(as.list(x), 'value'))

#[[1]]
#[[1]]$value
#[1] 0.08986225


#[[2]]
#[[2]]$value
#[1] 0.1127987


#[[3]]
#[[3]]$value
#[1] 0.1182074


#[[4]]
#[[4]]$value
#[1] 0.1138769

#...
#...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-23
    • 1970-01-01
    • 2014-06-15
    • 2021-05-07
    • 1970-01-01
    • 2013-05-30
    • 2021-10-21
    相关资源
    最近更新 更多