cols=[`a,`f,`b,`c,`d,`e] tb=table(rand(1.0,10) as a,rand(10.0,10) as d,rand(100.0,10) as c ) for (icol in (set(cols)-set(colNames(tb))).keys()){ tb[icol]=double() } reorderColumns!(tb,cols) m=matrix(tb).rename!(cols)
回答于 2022-07-06 14:08
可以看一下savetable函数,https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/CommandsReferences/s/saveTable.html?highlight=savetable#savetable
回答于 2022-07-06 11:55
update tb set date=date(timestamp) update tb set time=time(timestamp)
回答于 2022-07-05 16:07
tb = table(`1`2`3 as id , ['{"a":2,"b":3,"c":"val1"}','{"a":11,"b":32,"c":"val2"}','{"a":21,"b":30,"c":"val3"}'] as val) def f(val){ a=each(x->parseExpr(x).eval()["a"],val) b=each(x->parseExpr(x).eval()["b"],val) c=each(x->parseExpr(x).eval()["c"],val) return a,b,c } select id,f(val)...
回答于 2022-07-05 15:34
你的中间计算逻辑讲的很清楚,还有一个疑问"总结:上面全部的文字为计算第三行f1的流程。 如果要计算下一行的f1,还是按照以上所有流程去计算",如果计算第四行的f1,因为第四行的barlen=2,既窗口长度为2,根据“按“第一个窗口的最后一行为本行”的原则”,去确定第四行的窗口序列,是吧?你的原始输入就是p值和barlen,输出为...
回答于 2022-07-05 11:55
不太懂你的第一段的描述,“首先以barlen为windowsize计算window的最大最小值(第一个window以当前行作为最后一行,并且size=3,则第一个window为[3,4,4]标黄处,下一个window为滚动window,为标蓝色[3,5,7]),接下来的窗口分别是[6,8,6],[7,8,7]等等。这行,barlen=3,从第一个window一次计算最大最小值,”感觉这个MINARR的计...
回答于 2022-07-01 12:07
tb=table(1..3 as id ,[' {"a":1,"b":2}',' {"a":3,"b":4}','{"a":0,"b":2}'] as val1) select id,each(x->parseExpr(x).eval()["a"],val1) as a from tb
回答于 2022-06-28 17:22
s="retail_year_code = 2022 and (区域 = `东北 or 指标 = `折扣额_计划) and 年月 = `202206 and 年月 in [`202206]"whereConditions=parseExpr(split(s,"and"))
回答于 2022-06-25 20:05
dolphindb也是向量化的编程 A = [1,2,3] A[A!=2] A[not A in [2]]
回答于 2022-06-25 19:53