更新时,新值的数据类型与列因子的数据类型不匹配



我有一个因子表。现在,我想给特定行的每个因子加上一个数字。演示代码如下所示:

factor=table(now() as tradeTime,`600009 as secID,1.0 as factor1,2.0 as factor2,3.0 as             
factor3,4.0 as factore4,5.0 as factor5)
for(i in factor.columnNames()){
if(left(i,6)!="factor") 
continue
update!(factor, i, i + 10)
}

但是当我在DolphinDB GUI中运行这些脚本时,我得到一个错误:"新值的数据类型与列factor1的数据类型不匹配"。即使我将数字10改为10.0,错误仍然存在。有什么问题吗?

更新!(factor, i, i+10)其中i是字符串,i+10是字符串,而不是字段,因此可以更改为:

update!(factor, i, factor[i] + 10)

factor[i] = factor[i] + 10

update!(factor, i, expr(sqlCol(i), +, 10))

相关内容

最新更新