打开大 CSV 文件,删除一行,然后保存一个副本

Open big CSV file, remove a line and then save a copy

我想在 Python 中打开一个大的 CSV 文件 (~2GB),分隔符为“;”(分号和 space),搜索特定的词,如果它出现在一行删除整行。虽然我可以执行上述过程,但当我尝试保存 .CSV 文件时,分隔符发生变化,我无法将“自定义”分隔符设置为“;”。更改分隔符不是一个选项。

您可以使用 bash shell 来做到这一点(如果加载 2GB 文件是一个问题)。

以下表达式使用正则表达式\bYOUR_WORD\nn(将 YOUR_WORD 替换为您的特定词)并将创建一个没有该条件的新文件。

此外,这不会消耗大量 RAM。这可能需要一些时间,具体取决于行数。

while read line; do [[ $line =~ \bYOUR_WORD\b ]] || echo $line; done <  file.csv > newfile.csv