首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在kdb+中设置落入某个范围的随机数?

如何在kdb+中设置落入某个范围的随机数?
EN

Stack Overflow用户
提问于 2019-02-24 06:41:11
回答 4查看 1.5K关注 0票数 2

在Kdb+中,如何使用"roll“函数使生成的随机数落在不是从0开始的范围内?例如,如果我希望范围在2-10而不是0-10之间,该怎么办?

我必须在代码中添加什么才能使它落入一个范围,而不是默认的0-x?我尝试并寻找了每种方法,但似乎找不到一个。

EN

回答 4

Stack Overflow用户

发布于 2019-02-25 00:36:03

你也可以从0到8滚动,然后加两个。这不需要预先生成列表

代码语言:javascript
运行
复制
q)2+5?9
10 2 7 10 7

假设你想要2-10个

票数 5
EN

Stack Overflow用户

发布于 2019-02-24 06:53:47

代码语言:javascript
运行
复制
// quick and simple method
q)10?2+til 8
6 2 4 3 4 3 4 5 4 7
// or function (x)=num to be dealt, (y) start range, (z) end range
q)f:{x?y+til 1+z-y}
q)f[10;10;20]
12 17 10 11 19 12 11 18 18 11
票数 0
EN

Stack Overflow用户

发布于 2019-02-24 06:56:57

如果您在右边的参数中提供了一个列表,那么您将从该列表中获得一个随机值。要滚动2-10之间的随机范围,可以使用til生成范围:

代码语言:javascript
运行
复制
q)2+til 9
2 3 4 5 6 7 8 9 10
q)1?2+til 9
,6

你甚至可以提供一个随机抽取的通用列表:

代码语言:javascript
运行
复制
q)3?(`abc;2 3f;10;20;30;"text")
2 3f
`abc
"text"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54846987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档