gpt4 book ai didi

r - R中的累积乘法加上额外的常数

转载 作者:行者123 更新时间:2023-12-04 09:38:32 26 4
gpt4 key购买 nike

我是 R 的新手,正在努力解决以下累积乘法与额外常量相加的组合。我希望在数据框中实现以下目标:

Variable_X         Variable_Y           Variable_Z
X1 Y1 Y1*X1 = Z1
X2 Y2 (Z1+Y2)*X2 = Z2
X3 Y3 (Z2+Y3)*X3 = Z3
X4 Y4 (Z3+Y4)*X4 = Z4

如有任何帮助,我们将不胜感激。

最佳答案

library(Rcpp)

cppFunction("NumericVector foo_cpp (NumericVector x, NumericVector y) {
int n = x.size(), i;
NumericVector z(n);
double tmp = 0.0;
for (i = 0; i < n; i++) {
tmp = (tmp + y[i]) * x[i];
z[i] = tmp;
}
return z;
}")

set.seed(0)
dat <- data.frame(x = runif(1e+6), y = runif(1e+6))
system.time(z <- foo_cpp(dat$x, dat$y))
# user system elapsed
# 0.016 0.000 0.014
dat$z <- z

关于r - R中的累积乘法加上额外的常数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52130992/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com