gpt4 book ai didi

KDB:选择并舍入每一行

转载 作者:行者123 更新时间:2023-12-02 20:11:44 26 4
gpt4 key购买 nike

我创建了自己的舍入函数:

.q.rnd:{$[x < 0; -1; 1] * floor abs[x] + 0.5}

我有一个带有 COL 字符串列的 Test 表

select  "F"$(COL) from Test

24549.18741328
48939.50717263
-274853.33568872
-24549.18741328
298753.62574861
84822.70074144
-7468840.64371524
117944.21228603
-117944.21228603
7468840.64371524
-7468840.64371524

我想导出一个表格来四舍五入测试中的记录

有人会认为下面的声明可行。但事实并非如此。

select .q.rnd "F"$(COL) from Test

我收到错误“类型”。那么如何四舍五入记录呢?

最佳答案

if-else 条件的结果必须是原子 bool 值。当您在列上运行 .q.rnd 时,您正在操作列表和 x<0将返回 bool 值列表,而不是原子。条件向量为?

尽管如此,看起来您还是想要一个结果整数/长整型,所以只需在此处使用解析即可

q)t:([]string (10?-1 1)*10?10000f)
q)select "F"$x from t
x
-------------------
4123.1701336801052
-9877.8444156050682
-3867.3530425876379
7267.8099689073861
4046.5459413826466
-8355.0649625249207
6427.3701561614871
-5830.2619284950197
1424.9352994374931
-9149.8820902779698
q)select "j"$"F"$x from t
x
-----
4123
-9878
-3867
7268
4047
-8355
6427
-5830
1425
-9150

关于KDB:选择并舍入每一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53438114/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com