re = select * from pnodeRun(getTSDBMetaData) where chunkPath like "%/iotTest%" and table like "pt_all%" context by chunkId order by files file = re.files.split(",").flatten().dropna() 可以参考上述脚本获取
回答于 2023-10-25 17:48
空字符可以用 dropna 过滤或者 v[isValid(v)],如果需要其他过滤条件可以修改索引为一个条件表达式。
回答于 2023-10-20 10:26
我测试了一下是因为您的 array vector 有空元素,而 interval 指定了 fill 方法,调用的是内置的 ffill 函数,目前 fill 空值的函数不支持 array vector 数据形式,所以会报错。 目前解决方案是把空值手动填个 0 或者什么标志元素进去,然后调用 interval,之后再过滤。需要注意 array vector 字段的更新必须是整列,更新...
回答于 2023-10-13 10:30
freqTransform 中列处理逻辑: for(i in 0:colCount){ if (factors[i] == `stock){ colDefs[i] = sqlCol(factors[i]) } else if (factors[i] == `date){ colDefs[i] = sqlCol(factors[i],last,`tobedelete) } else{ colDefs[i] = sqlCol(fact...
回答于 2023-10-13 09:31
可以用 interval 实现日频到分钟频的转换, 参考脚本如下: date = 2021.01.01 2021.01.02 2021.01.03 val = 1.1 1.2 1.3 tmp = table(concatDateTime(date,23:59:59) as dt, val) select avg(val) from tmp group by interval(dt, 1m, "prev") 多张表合成一张表可以用 unionAll 实现
回答于 2023-10-09 16:32
试试下面的脚本是否满足要求 st = `000001`000002`000004`000004`000004`000004`000005`000005`000005`000006`000006indate = 2014.02.21 1991.01.29 2001.09.03 2009.06.02 2007.07.03 2021.06.16 2017.07.03 1990.12.10 1999.12.30 1992.04.27 2017.07.03listed_date = 1991.04.03 1991.01.29 1991.01.14 1991.01.14 199...
回答于 2023-10-09 16:08
df.head()[['symbol', 'exchange']] 会按照 symbol, exchange 的顺序去打印,而不一定是原 df 的顺序去打印。 如果顺利入库且字段能对应上,说明 df 写入的字段数据和分布式表的表结构顺序的一致的,即原本 df 的顺序是按照 symbol exchange,应该是没问题的。
回答于 2023-09-26 17:30