【问题标题】:how diagnose csvsql "column not found" error如何诊断csvsql“未找到列”错误
【发布时间】:2019-03-28 18:50:29
【问题描述】:

在 macOS 10.14.3 上使用 csvkit

输入文件:

head -n 3 Nov_git_v2.csv

Model_var,dummy

年龄,

Basket_Size_FP_24,

Basket_Size_FP_6,

csvsql --query "select Model_var from Nov_gift_v2"  Nov_gift_v2.csv

产生错误:

sqlite3.OperationalError) 没有这样的列:Model_var

csvstat -c 1-2 Nov_gift_v2.csv > csvstat_output.txt

显示列“Model_var”并列出其属性,暗示该列存在

csvsql --query "select Model_var from Nov_gift_v2"  Nov_gift_v2.csv

预期:

年龄

Basket_Size_FP_24

Basket_Size_FP_6

实际输出:

sqlite3.OperationalError) 没有这样的列:Model_var

【问题讨论】:

  • ` csvsql --query 'select "Model_var" from "Nov_gift_v2"' Nov_gift_v2.csv` """Model_var""" Model_var Model_var Model_var
  • 查询产生输出“Model_var Model_var Model_var”
  • 你有 Python 2 还是 Python 3?
  • python 2.7.16 on /usr/local/bin/python
  • 但我看到我也安装了 python 3.7.2...我不记得安装了 2.7,所以我怀疑 csvkit 安装了它作为其安装的一部分,可能是这样?

标签: csvkit


【解决方案1】:

我对 csvsql 1.0.4 没有任何问题。你的版本是什么 (csvsql --version)?

试试

csvsql --query 'select "Model_var" from "Nov_gift_v2"'  Nov_gift_v2.csv

【讨论】:

  • 我在使用 csvsql 1.0.3
  • @PatrickR 对我来说有效。你能分享你的文件吗(不只是在这里剪切和粘贴)?
  • 上传文件的最佳方式是什么?它很小(43 条记录,1 个字段)
  • @PatrickR 你可以使用 databin (databin.pudo.org) 或 gist (gist.github.com)。
  • @PatrickR 正如你在这张图片中看到的我没有错误i.imgur.com/Y4Asbah.png 我使用的命令是curl -sL "http://databin.pudo.org/t/6b64b2.csv" | csvsql --query 'select "Model_var" from stdin' | head
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多