我试图在重新计算后将Excel数据文件重复导入到R中。
每次读入.xlsx电子表格时,我希望刷新/更新/重新计算涉及RAND()
的所有单元格。
我在.xlsx文件中使用的excel函数是=beta.inv(rand(), alpha, beta)
,用于从beta发行版中进行随机采样。
但是,当尝试读取R中的excel文件时,XLConnect无法评估beta.inv()
。因此,我不得不将useCachedValues
参数设置为TRUE
。运行setForceFormulaRecalculation
后,在更新beta.inv(rand(), alpha, beta)
值本身的同时,不更新/重新计算具有RAND()
的单元格。
我是否可以通过beta.inv()
公式在单元格中获取更新的值,而XLConnect似乎无法重新计算该公式?或者,有什么方法可以重新计算R中工作表中的所有值?
randtest2.wb <-XLConnect::loadWorkbook("betainv sampling.xlsx")
randtest2<-XLConnect::readWorksheet(randtest2.wb, sheet = 1) #could not evaluate cells with beta.inv()
randtest2<-XLConnect::readWorksheet(randtest2.wb, sheet = 1, useCachedValues = TRUE)
setForceFormulaRecalculation(randtest2.wb,sheet = 1,TRUE)