marital_weeping Asked: 2024-12-12 09:00:40 +0800 CST2024-12-12 09:00:40 +0800 CST 2024-12-12 09:00:40 +0800 CST 在 kdb+ 中枚举连续的 772 给定一个由 0 和 1 组成的列表,假设l: 0 0 1 1 1 0 0 1 1我想得到一个以 1 开头的序列,每个连续的 1 集都是如此。因此所需的输出应该是l: 0 0 1 2 3 0 0 1 2。如何在 kdb+ 中实现这一点? kdb 2 个回答 Voted Best Answer cillianreilly 2024-12-12T09:25:10+08:002024-12-12T09:25:10+08:00 您可以使用scan: q){y*x+y}scan 0 0 1 1 1 0 0 1 1 0 0 1 2 3 0 0 1 2 terrylynch 2024-12-12T22:39:13+08:002024-12-12T22:39:13+08:00 此类任务有一个内置的快捷方式(尽管仅适用于浮点数) q)l:0 0 1 1 1 0 0 1 1f q)0 l\l 0 0 1 2 3 0 0 1 2f 请参阅https://code.kx.com/q/ref/accumulators/#alternative-syntax 它主要用于指数移动平均计算
您可以使用
scan
:此类任务有一个内置的快捷方式(尽管仅适用于浮点数)
请参阅https://code.kx.com/q/ref/accumulators/#alternative-syntax
它主要用于指数移动平均计算