相关疑难解决方法(0)

加速R中的循环操作

我在R中遇到了很大的性能问题.我编写了一个迭代data.frame对象的函数.它只是添加一个新列data.frame并积累一些东西.(操作简单).将data.frame有大约850K行.我的电脑仍在工作(现在大约10小时),我不知道运行时间.

dayloop2 <- function(temp){
    for (i in 1:nrow(temp)){    
        temp[i,10] <- i
        if (i > 1) {             
            if ((temp[i,6] == temp[i-1,6]) & (temp[i,3] == temp[i-1,3])) { 
                temp[i,10] <- temp[i,9] + temp[i-1,10]                    
            } else {
                temp[i,10] <- temp[i,9]                                    
            }
        } else {
            temp[i,10] <- temp[i,9]
        }
    }
    names(temp)[names(temp) == "V10"] <- "Kumm."
    return(temp)
}
Run Code Online (Sandbox Code Playgroud)

有什么想法如何加快这个操作?

performance loops r rcpp r-faq

182
推荐指数
7
解决办法
8万
查看次数

lapply和do.call有什么区别?

我最近在学习R并且被两个函数混淆了:lapplydo.call.它们似乎与mapLisp中的函数类似.但为什么有两个具有不同名称的函数?为什么R只使用一个叫做的函数map

functional-programming r

130
推荐指数
7
解决办法
6万
查看次数

标签 统计

r ×2

functional-programming ×1

loops ×1

performance ×1

r-faq ×1

rcpp ×1