首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何利用R中的for循环从向量中提取特定元素

如何利用R中的for循环从向量中提取特定元素
EN

Stack Overflow用户
提问于 2018-03-05 08:26:10
回答 1查看 330关注 0票数 0

我有一个向量,我想用R中的for循环函数提取这个向量的一个特定元素。

以下是我的尝试:

代码语言:javascript
复制
par <- list(0.5,0.5)
par2 <- list(0,0.4)
Param <- c(par, par2)
s <- length(par)
m <- length(par2)
for(i in 1:2){
  par[[i]] <- Param[[i]]
  par2[[i]] <- Param[(length(par)+1):length(Param)]
}

我拿到了这个:

代码语言:javascript
复制
 par2
[[1]]
[[1]][[1]]
[1] 0

[[1]][[2]]
[1] 0.4


[[2]]
[[2]][[1]]
[1] 0

[[2]][[2]]
[1] 0.4


> par
[[1]]
[1] 0.5

[[2]]
[1] 0.5

par的结果是正确的。然而,par2是错误的。这是重复的。

我想得到这个:

par[[1]] <- 0.5par[[2]] <- 0.5par2[[1]] <-0par2[[2]]<- 0.4

有什么帮助吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-05 08:36:35

这是因为在循环中两次使用序列进行索引。

代码语言:javascript
复制
Param[(length(par)+1):length(Param)]

您可以只使用+i

代码语言:javascript
复制
for(i in 1:2){
  par[[i]] <- Param[[i]]
  par2[[i]] <- Param[[length(par)+i]]
}

> par
[[1]]
[1] 0.5

[[2]]
[1] 0.5

> par2
[[1]]
[1] 0

[[2]]
[1] 0.4
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49106163

复制
相关文章

相似问题

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