Установить заголовок при создании таблицы из CSV - PullRequest
0 голосов
/ 21 мая 2018

У меня есть csv "pf.csv":

Jules,Winnfield  
Vincent,Vega  
Mia,Wallace  
Marsellus,Wallace  

И я хотел бы указать список символов, которые становятся заголовком, когда я читаю csv.Обычно я бы загружал CSV следующим образом:

("SS";enlist ",") 0: `$"pf.csv"

, но это фактически устанавливает первую строку в качестве ключей в перевернутом словаре (то есть заголовок в таблице)
В документации для 0: Я читаю

Дополнительно, 0: может принимать список из трех элементов в качестве второго аргумента, содержащий дескриптор файла, смещение, с которого начинается чтение, и длину дочитать.

Но это неудобно, поскольку смещение должно указываться в количестве символов, а не в строках.

Ответы [ 2 ]

0 голосов
/ 21 мая 2018

Способ сделать это - указать имена столбцов перед битом, который вы используете для загрузки CSV.

flip`fname`surname!("SS";",")0:`:pf.csv

Вам также придется удалить enlist, потому что в вашем CSV нет заголовков столбцов.

Другим вариантом будет присвоить имена столбцам внутри вашего * .csv файла, и тогда вы можете просто использовать enlist в своем запросе, чтобы указать, что первая строка содержит имена столбцов.

Некоторые подробности здесь:

http://code.kx.com/q4m3/11_IO/#1152-variable-length-records https://code.kx.com/wiki/Reference/ZeroColon#Load_Delimited_Records_.28Read_CSV.29

0 голосов
/ 21 мая 2018

Не могли бы вы попробовать

flip `firstName`lastName!("SS";",") 0: `$"pf.csv"
...