在R中的向量中存储double for循环的结果

时间:2014-09-06 17:41:24

标签: r for-loop

我有一个双for循环的示例代码。我无法理解如何 蜡烛< -c(蜡烛,c)将c< -c + n的结果存储在矢量中。它不是连接蜡烛和c。谢谢你的解释。

Name<-c("A","B","C","D","E",
    "F","G","H","I","J",
    "K","L","M")
Age<-c(15,14,21,24,74,
   15,3,37,19,39,
   17,2,7)

jjj<-data.frame(Name,Age)

Candles<-c()
  for(Age in jjj$Age){
    c<-0
     for (n in 0:Age){
       c<-c+n
   }
 Candles<-c(Candles,c)
}

蜡烛

1 个答案:

答案 0 :(得分:0)

在一个简短的句子中,Candles <- c(Candles, c)在这种情况下可以理解为Python中的Candels.append(c)

它不会以某种方式覆盖变量Candles,新Candles将包含两个元素,第一个元素是旧Candle,第二个元素是{ {1}}。

有关函数c的详细信息,请尝试:

c

我发现细节非常有用:

  

输出类型由层次结构中的最高类型的组件NULL&lt;原始&lt;逻辑&lt;整数&lt;双&lt;复杂&lt;字符&lt;列表&lt;表达。 Pairlists被视为列表,但非向量组件(如名称和调用)被视为单元素列表,即使递归= TRUE也不能列出。

     

c有时用于删除除名称之外的属性的副作用,例如将数组转换为向量。 as.vector是一种更直观的方式,但也删除了名称。另请注意,默认情况下不需要使用默认方法(并且它们几乎肯定会保留类属性)。