kdb - 将 KDB 表转换为特殊格式的字典
问题描述
我对 KDB/Q 很陌生,我的表格只有两列,如下所示:
id value
100 a
101 b
100 c
102 d
103 e
100 f
102 g
101 e
我需要将此表转换为字典组的形式,就像这种格式一样
id | x1 x2 x3 x4 x5 x6 x7 x8
100 | a :: c :: :: f :: ::
101 | :: b :: :: :: :: :: e
102 | :: :: :: d :: :: g ::
103 | :: :: :: :: e f :: ::
我尝试使用 by 但它只给我 group by id 不能像键控表或字典那样转换
有人可以帮我做同样的事情吗?列名(x1、x2 等不重要)。
解决方案
想想也许你正在寻找一个exec by from table
q)t:([]id:100 101 100 102 103 100 102 101;val:`a`b`c`d`e`f`g`e)
q)exec val by id from t
100| `a`c`f
101| `b`e
102| `d`g
103| ,`e
q)// if you need the (::)
q)exec {@[count[t]#(::);x;:;y]}[i;val] by id from t
100| `a :: `c :: :: `f :: ::
101| :: `b :: :: :: :: :: `e
102| :: :: :: `d :: :: `g ::
103| :: :: :: :: `e :: :: ::
推荐阅读
- encryption - 使用 RSACryptoServiceProvider,如何将密钥交换密钥和签名密钥存储在同一个密钥容器中?
- python - 从 django 中的每个页面搜索
- react-native - React Native 获取服务器上未收到的 POST 变量
- angular - 使用 ng-content 的角度传递模板参考
- python - AttributeError:“object”对象没有属性“attr”
- vhdl - 有没有办法用单个输入切换顶级文件的输出?
- reactjs - 在 react/gatsby 中更新 HTML
- python - 无法从 Python 3.7.1 中的其他目录导入模块
- javafx - 无法在 javafx 中以适当的照明显示搅拌机 3d 模型
- python - 如何使用 gitpython 获取提交作者姓名和电子邮件?