我每天有几个; class: undefined;
; cannot reference undefined identifier
文件,这些文件是从加载到KDB服务器的程序中导出的。我的问题是行标题是固定的,对于我要用作表中行标签的内容而言并不理想。现在,基本上,每次保存时,我基本上都需要替换.csv
的第一行。
自动执行此操作的最佳方法是什么?基本上现在,我要打开.csv并将另一个csv的一行粘贴到行标题上。因为我有四个不同的csv文件,需要每天更换标签,所以这很麻烦。以下是在INIT中导入其中一个csv文件的命令。我猜想有一种方法可以使用.csv
来做到这一点,但是不确定语法是否正确。谢谢。
xcol
答案 0 :(得分:2)
另一种方法,有时是更有效的方法是,将整个文件(包括标头)作为数据本身读取,但是将第一行删除。
当您使用零冒号读入一个csv文件时,可以告诉它使用enlist","
来期望标头,或者不使用","
来期望它。当您不希望有标题时,可以将列列表传递到结果字典中,然后翻转结果以将其转换为表。之后,您放下第一行,就像您遇到的情况一样,这是不必要的标题。
q)// don't want to use `aaa`bbb as columns
q)1_flip `col1`col2!("JJ";",")0:("aaa,bbb";"123,345")
col1 col2
---------
123 345
答案 1 :(得分:0)
猜猜我跳了枪。与xcol
一起玩了一点,似乎可以做到。只是做了一个简单的
invoicedata: ("SSPPIFFFSSSSIIIFFFFISFSFS"; enlist ",") 0:`InvoiceData.csv;
invoicedata: `a`b`c`d xcol invoicedata
似乎可行。