gpt4 book ai didi

linux - 使用 csvfix for linux 对数值进行排序 - 将数字转换为字符串

转载 作者:太空狗 更新时间:2023-10-29 12:36:13 30 4
gpt4 key购买 nike

我正在使用 csvfix根据第二列中的整数(计数器)值对 CSV 文件进行排序。但是,似乎 csvfix 在执行排序之前将文件中的所有字段都用双引号引起来,将它们转换为字符串。结果是行按字符串值排序,因此“1000”出现在“2”之前。

有一个命令行选项 -smq 应该应用“智能引用”,但这对我没有帮助。如果我使用命令 csvfix echo -smq file.csv,输出的数字字段周围没有引号,但是当我将其通过管道传输到 csvfix sort -f 2 file.csv 时,该文件没有引号,但仍按“字符串顺序”排序。我是否在排序命令中包含 -smq 标志没有区别。

此外,我希望 csvfix 忽略字符串标题的第一行。 Csvfix 问题跟踪 claims this is already implemented但我只能找到似乎完全删除标题行的 -ifn 标志。

对于这个工具来说,这些似乎是非常基本的功能,所以我可能遗漏了一些非常简单的东西。希望这里有人使用过 csvfix 并想通了。

最佳答案

根据on line documentation for csvfix , sort 有一个用于数字排序的 N 选项:

csvfix sort -f 2:N file.csv 

话虽如此,CSV isn't a particularly good format for text manipulation .如果可能的话,最好选择 DSV(定界符分隔值),例如 Tab 或管道分隔,这样您就可以简单地将输出传送到 sort,它具有按字段排序的充足功能,使用您需要的任何整理方法。

关于linux - 使用 csvfix for linux 对数值进行排序 - 将数字转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10774700/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com