DolphinDB提供了4种填充NULL值的方法: bfill和bfill!:使用NULL后的非NULL元素填充NULL值。ffill和ffill!:使用NULL前的非NULL元素填充NULL值。lfill和lfill!:线性填充非NULL元素之间的NULL值。nullFill和nullFill!:用指定值填充NULL值。 对于bfill和ffill,我们可以使用可选参数limit来指定需要填充的NULL值
回答于 2021-06-10 13:38
原脚本太长了还有很多数据文件,我尝试一个简单的: t = table(1..5 as id ,`a`b`c`c`c as b,`a1`b1`c1`c1`c2 as c,```2`2`2 as d) share t as shared_t def update_data() { shared_t = exec * from shared_t; } update_data() 把shared_t = exec * from shared_t;单独拿出来跑是不会报错的
回答于 2021-06-10 13:37
重启dolphindb后,连接上创建该流表并进行持久化的节点,再次执行: colName=["time","x"] colType=["timestamp","int"] t = streamTable(100:0, colName, colType); enableTableShareAndPersistence(table=t, tableName=`st, cacheSize=1200000) 就可以将持久化到磁盘的流数据加载进来。 如果想设置启动dolphindb自动加...
回答于 2021-06-10 13:36
DolphinDB中的convertEncode函数、toUTF8函数、fromUTF8函数,都支持转换字符串的编码。
回答于 2021-06-10 13:35
DolphinDB中的启动脚本可以实现上述的功能。 step1 在安装包的server目录下创建startup.dos文件 step2 startup.dos文件内容: colName=["time","x"] colType=["timestamp","int"] t = streamTable(100:0, colName, colType); enableTableShareAndPersistence(table=t, tableName=`st, cacheSize=1200000) 表示每次启...
回答于 2021-06-10 13:35
可以尝试一下下面的代码: def calcNewStockNum(dates, symbols){ d = dates.groups() sortedDates = d.keys().sort() dailyStocks = loop(x->symbols[d[x]].set(), sortedDates) newStockNum = eachPre(def(t2, t1)->size(t2 - t1), dailyStocks).flatten() return table(sortedDates as date, newStockNum) }...
回答于 2021-06-10 10:43
k线数据可以用group by code, date, bar(time,...)的方式实现,具体例子可参阅k线教程:https://gitee.com/dolphindb/T...
回答于 2021-06-10 10:42
这个问题应该是dolphindb python api版本和dolphindb server版本不匹配的原因,如果更新了dolphindb server,请尝试更新一下dolphindb python api到1.30.*版本。
回答于 2021-06-10 10:41
更新了server以后,GUI也需要更新,请到官网www.dolphindb.cn下载最新的GUI即可解决上述问题。
回答于 2021-06-10 10:41
因为t1和t2的x列中的数据类型不一样,导致不能合并到同一列。可以将t2的x列列名修改为y,然后再用unionAll进行连接: t1=table(1 2 3 as id, 11 12 13 as x) t2=table(3 4 5 as id, `a `b `c as y) unionAll(t1,t2, true) 返回:
回答于 2021-06-10 10:41