如何在DolphinDB中显示Vector值?解决代码执行显示异常问题
解决DolphinDB中Vector值的查看问题
嘿,我来帮你搞清楚这个问题~你看到的com.xxdb.data.BasicDateVector@64e2a63c其实只是DolphinDB里Date类型Vector对象的Java内存引用标识,并不是实际的数据内容,所以没法直接看到具体数值。下面我给你两种常用的方法来查看Vector的真实值:
一、在数据浏览器中显示Vector值
数据浏览器适合查看结构化的数据集,你可以通过以下两种方式把Vector转换成可浏览的格式:
- 将Vector转为表:执行下面的代码,把切割后的日期Vector包装成表,就能在数据浏览器里看到清晰的列数据了:
执行后,在GUI的“变量”面板找到cutTable = table(incomes.date.cut(x) as cutDates)cutTable,双击它就能在数据浏览器打开查看。 - 直接通过变量面板查看:先把Vector赋值给一个变量,比如:
然后在GUI左侧的“变量”面板里找到cutResult = incomes.date.cut(x)cutResult,双击这个变量,数据浏览器就会加载并显示Vector里的所有日期值。
二、简单快速展示Vector数值
如果只是想快速看一下Vector里的内容,不用打开数据浏览器,这些方法更直接:
- 使用
show()函数:这是最常用的快速打印方法,执行后会直接在GUI的输出区显示所有元素:show(incomes.date.cut(x)) - 转为字符串输出:用
toString()函数把Vector转换成字符串形式,适合复制或快速预览:toString(incomes.date.cut(x)) - 预览前N个元素:如果Vector很大,用
take()函数只显示前几个元素,比如查看前5个值:take(incomes.date.cut(x), 5)
完整示例代码
把这些方法整合到你的代码里,直接运行就能看到效果:
incomes=table(2016.07.31 - 10..1 as date, rand(100,10) as income); eventdates = [2016.07.22, 2016.07.25, 2016.07.29]; x = incomes.date.binsrch(eventdates); // 快速打印所有值 show(incomes.date.cut(x)); // 生成表用于数据浏览器查看 cutTable = table(incomes.date.cut(x) as cutDates); // 赋值变量后通过变量面板查看 cutResult = incomes.date.cut(x);
内容的提问来源于stack exchange,提问作者Flossie
相关产品推荐
相关产品推荐

