问题标签 [csvkit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
213 浏览

python-3.x - 如何通过 STDIN 将字符串传递给在 python 脚本中执行的终端命令?

我需要从数据框生成 postgres 模式。我发现 csvkit 库最适合匹配数据类型。我可以通过 docs 中的以下命令通过终端在我的桌面上的 csv 上运行 csvkit 并生成 postgres 模式:

csvkit 文档 - https://csvkit.readthedocs.io/en/stable/scripts/csvsql.html

我可以通过以下代码在我的脚本中运行终端命令:

但是我有一个数据框,我已将其转换为 csv 字符串,并且需要从字符串生成模式,如下所示:

在文档中它说在位置参数下:

如何将我的变量作为变量传递csvstr到代码行中a=os.popen("csvsql -i postgresql csvstr").read()

我尝试执行以下代码行但出现错误OSError: [Errno 7] Argument list too long: '/bin/sh'

先感谢您

0 投票
1 回答
26 浏览

command-line - 如何从 csv A 中获取列,并将列作为 csv B 中的键

我正在尝试通过将其与国家 CSV 数据库进行比较来更正我的districtnameA.csvB.csv

以下是我的内容A.csv

的内容B.csv

如何使用列PinCode作为A.csv键来查找中提到的官方地区名称B.csv

命令行方法csvkit会很有帮助。

0 投票
1 回答
197 浏览

csvkit - 使用 csvkit 对多列进行排序,某些列倒序

我正在使用csvsortfrom csvkit对我的 csv 数据进行排序。我想根据两列进行排序,其中一列应该是相反的顺序。那可能吗?

例如:

但我想要

csvsort -r -c1,2颠倒两列的顺序。csvsort -rc 1 -c 2仅在第 2 列上排序(相反,与 相同csvsort -rc 2)。

0 投票
0 回答
242 浏览

python - csvjoin 错误:“强制转换为 Unicode:需要字符串或缓冲区,找到 LazyFile”

我正在尝试使用csvjoin来自csvkit. 一个 csv 比另一个大得多,但它们都有一个共同的列,即 RD 代码(列名为“RD”)。假设csvjoin仅匹配具有相同 RD 代码的行不是问题,我不确定为什么此命令不起作用:csvjoin RD all-crimes-2012.csv some-crimes-2012.csv > joined-2012.csv

我收到此错误:“强制转换为 Unicode:需要字符串或缓冲区,找到 LazyFile”。我想也许编码是错误的,所以我用 UTF-8 编码保存了每个 csv 并再次尝试了这个命令——得到了同样的错误。还有其他几个人就csvjoin命令提出了同样的问题,但我没有看到任何答案。

我在 Sierra 上使用 Python 2.7.15。

关于问题可能是什么的任何想法?任何帮助表示赞赏。

0 投票
2 回答
3133 浏览

openpyxl - in2csv:iter_rows() 得到了一个意外的关键字参数“row_offset”

我正在使用来自 csvkit 版本 1.0.3 的 in2csv,使用 pip 和 Python 3.7 安装。

使用该工具进行最基本的转换任务时,即

我被错误击中

我了解该错误是由底层库 openpyxl 报告的。如何解决这个问题?

0 投票
1 回答
495 浏览

mysql - csvkit mysql导入失败,VARCHAR需要方言mysql的长度

使用以下命令安装 csvkit 后

并尝试.csv按如下方式导入 a:

我收到以下错误

0 投票
2 回答
478 浏览

csvkit - csvkit in2csv - how to convert a single json object to two-column csv

Looking for a one liner with csvkit.

From a plain json object

Want this csv

I basically want this command to work, but it doesn't.

Seems like something csvkit can do, and I just haven't found the right options.

0 投票
1 回答
120 浏览

csvkit - 如何诊断csvsql“未找到列”错误

在 macOS 10.14.3 上使用 csvkit

输入文件:

head -n 3 Nov_git_v2.csv

Model_var,dummy

年龄,

Basket_Size_FP_24,

Basket_Size_FP_6,

产生错误:

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

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

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

预期的:

年龄

篮子_尺寸_FP_24

篮子_尺寸_FP_6

实际输出:

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

0 投票
2 回答
189 浏览

csvkit - 如何将 csvstat 的输出编辑为... csv

如何编辑 csvkit 的 csvstat 工具的输出,使其格式为... CSV?

更具体地说,csvstat 可以从 CSV 文件的内容中输出计数和列表。例如,以下命令将读取名为 data.csv 的文件,然后对名为“pos”的列中的值进行计数和制表:

结果是一个看起来像 Python 字典的字符串:

您知道将此字符串转换为 CSV 的快速简便的方法吗?单线?也许通过使用另一个 csvkit 工具?

0 投票
1 回答
119 浏览

php - 为什么 in2csv 不使用非 ascii 表标题转换我的 XLSX 文件?[CentOS x64]

我的问题是我有一个带有非 ascii 工作表名称 ( Общий отчет) 的 Excel XLSX 文件,我正在尝试使用 in2csv 工具将其转换为 CSV。exec我使用函数从 PHP 运行它。

在我的本地机器(Windows 10 x64)上,一切正常。我正在尝试在 CsntOS x64 VDS 上运行它,当我exec从终端启动我的 PHP 脚本(用于调用 in2csv 工具)时 - 它也可以正常工作。但是当我从 cron ( php -f ./task.php) 运行它时 - 它不会产生错误,但生成的 CSV 文件是空白的!

我做了一些测试,检查运行 PHP 脚本的用户和组,python 默认编码,但仍然没有任何线索。请帮忙!

这是转换文件的命令: