学习R和新功能语言,坚持这一点。
我有一个带有以下签名的函数:
Control <- FUN(SEED=vector(int, float), DATA=vector(float)) yields RESULT=vector(int, float)
我有一个带浮动条目的矩阵M
我想依次将FUN应用于M的每一列,作为DATA参数,使用前一个FUN调用的RESULT作为SEED到下一个矩阵列的FUN调用。
循环解开,我的意思是:
1) FUN(SEED=(1, 0), DATA=M_c1) #no previous result at the start, so specify
(yields RESULT_1)
2) FUN(SEED=RESULT_1, DATA=M_c2)
.
.
.
n) FUN(SEED=RESULT_n, DATA=M_cn)
RESULT_(n + 1)然后是计算的结束。
我一直在查看APPLY功能系列,但我没有看到如何将结果反馈到FUN后续FUN调用中。
我错过了APPLY家族的一些东西吗?还有其他方式在R /功能世界中完成这种事情吗?我知道FOR循环可以完成,但我的印象是这样的结构被认为是R世界中的不良实践 - &#34; R方式&#34;这样做?
任何想法都赞赏,
SFF