如何导入csv文件的部分列

CSV文件列数较多时,如何方便的导入部分列,人力分辨太耗时费力。

请先 登录 后评论

最佳答案 2021-11-06 15:28

详细教程为https://gitee.com/dolphindb/Tutorials_CN/blob/master/import_csv.md#24-%E5%AF%BC%E5%85%A5%E6%8C%87%E5%AE%9A%E5%88%97

如下摘取了部分内容:

首先,调用extractTextSchema函数得到目标文本文件的表结构。

dataFilePath="/home/data/candle_201801.csv"
schemaTB=extractTextSchema(dataFilePath);

使用rowNo函数为各列生成列号,赋值给schema表中的col列,然后修改schema表,仅保留表示需要导入的字段的行。

update schemaTB set col = rowNo(name)
schemaTB=select * from schemaTB where name in `symbol`date`open`high`close`volume`turnover;

请注意:

  1. 列号从0开始。上例中第一列symbol列对应的列号是0。
  2. 导入数据时不能改变各列的先后顺序。如果需要调整列的顺序,可以将数据文件加载后,再使用reorderColumns!函数。

最后,使用loadText函数,并配置schema参数,导入文本文件中指定的列。

tmpTB=loadText(filename=dataFilePath,schema=schemaTB);
请先 登录 后评论

其它 0 个回答