将 CSV 导入 KDB 表

use*_*724 2 database kdb q-lang

我有一个包含随机数据的 csv 文件,我可以将其导入表中,但是在导入 csv 时是否可以为该表创建列

我试过这个,但它似乎不起作用它得到一个类型错误:

details:`time`place`cost`total`address ("TSFIS";",") 0:`data.csv
Run Code Online (Sandbox Code Playgroud)

MdS*_*lih 6

您离得不远了 - 您需要将您返回的列表列表0:转换为字典并flip创建一个表:

detailsTbl:flip`time`place`cost`total`address!("TSFIS";",") 0:`data.csv
Run Code Online (Sandbox Code Playgroud)

例子:

/ start off by writing some data
q)hclose hopen[`:data.csv] "a,b,c,d\naa,bb,cc,dd\naaa,bbb,ccc,ddd"
q)read0`:data.csv
    "a,b,c,d"
    "aa,bb,cc,dd"
    "aaa,bbb,ccc,ddd"

/ lets inspect what we get back from 0:
q)show data:("SSSS";",")0:`:data.csv
    a aa aaa
    b bb bbb
    c cc ccc
    d dd ddd

/ convert to dict + flip to create table
q)flip `aCol`bCol`cCol`dCol!data
    aCol bCol cCol dCol
    -------------------
    a    b    c    d
    aa   bb   cc   dd
    aaa  bbb  ccc  ddd
Run Code Online (Sandbox Code Playgroud)