在矩阵中的列上迭代和应用函数更有效

时间:2014-03-21 16:24:51

标签: r element

我的数据看起来大致如此(数百万行):

Customers    Market    Firm    
1             NY        A
2             LA        B
1             LA        A
1             NY        A
...           ...       ...

"公司&#34>中的一些条目;列等于' x',我需要忽略这些行。

我需要创建另一个矩阵,其中Markets为行,Firms为列,每个元素为" Customers"对于每个市场 - 公司对。

我目前使用的代码是一个相对简单的for循环:

for (i in 1:length(mydata$Customers)) { 
  if(mydata$Firm[i]!="x") {
    newmatrix[mydata$Market[i],mydata$Firm[i]] <- newmatrix[mydata$Market[i],mydata$Firm[i]] + mydata$Customers[i]
  }
}

它有效,但它需要永远。有没有办法可以加快速度?我是R的新手,但我知道做这些操作应该更简单......

0 个答案:

没有答案