Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何更改for循环中引用的名称--R_R_For Loop_Linear Programming - Fatal编程技术网

如何更改for循环中引用的名称--R

如何更改for循环中引用的名称--R,r,for-loop,linear-programming,R,For Loop,Linear Programming,我的R代码中有一个线性程序。我正在通过它传递具有类似名称“FP_2013_01”、“FP_2013_02”、“FP_2014_01”等的数据帧。我希望for循环动态调整“2013”和“01”值,因此我不必反复重复该过程。这是线性程序: num_constraints <- 5 dec_var <-length(FP_2013_01$PLAYER) test <- make.lp(num_constraints,dec_var) set.type(test,{1:dec_var}

我的R代码中有一个线性程序。我正在通过它传递具有类似名称“FP_2013_01”、“FP_2013_02”、“FP_2014_01”等的数据帧。我希望for循环动态调整“2013”和“01”值,因此我不必反复重复该过程。这是线性程序:

num_constraints <- 5
dec_var <-length(FP_2013_01$PLAYER)
test <- make.lp(num_constraints,dec_var)
set.type(test,{1:dec_var},"binary")
set.objfn(test,c(FP_2013_01$avg_FD_PTS))
set.row(test,1,c(FP_2013_01$Wk1))
set.row(test,2,c(POS_FP_2013_01$QB))
set.constr.type(test,c(3,3,3,3),{2:5})
set.row(test,3,c(POS_FP_2013_01$RB))
set.row(test,4,c(POS_FP_2013_01$WR))
set.row(test,5,c(POS_FP_2013_01$TE))
set.rhs(test,c(50000,1,2,3,1))
lp.control(test,sense='max')
write.lp(test,'model.lp',type='lp')
solve(test)
get.objective(test)

num_constraints在R中重命名可以通过使用=或感谢tris将其设置为其他值来完成——这似乎是删除数据帧的好方法,但我更感兴趣的是在数据帧中循环。因此,取一个数据帧,通过线性程序运行它,获取/保存解决方案,然后运行一个新的(类似命名的)数据帧。对此有什么想法吗?我会试着把它们都放在一个列表中,然后用lapply或sapply迭代,可能不止一次。否则,如果使用正则表达式对名称进行模式匹配以选择要处理的正确数据帧,则for循环可以工作。建议尝试data.tables,因为它们比data.frames更通用、速度更快—例如,它们具有一些处理逻辑组的内置循环功能。
newFP = FP_2013_01
remove(FP_2013_01)