Unix环境下CSV文件中分号替换为逗号时的唯一分隔符?

Unix环境下CSV文件中分号替换为逗号时的唯一分隔符?

Azure 机器学习坚持要求我在 CSV 文件中使用逗号而不是分号作为分隔符。这在 *ix 计算机中破坏了很多东西,在这些计算机中我们使用分号并且单元格值有很多逗号。

转义字符或替换单元格中所有逗号的正确方法是什么?是否存在一些 Unix 工具可以避免或帮助解决此格式问题和可能的转换?

答案1

如果字段中有逗号,则生成的 CSV 文件应该生成某种方式来从这些逗号中划分字段。例如,这通常是通过在这些字段周围加上引号来完成的:

"field,1","field,2"

否则,无法区分字段与字段的一部分之间的区别。无论你选择什么角色,这个问题都存在。

如果需要,您可以搜索这些项目并将其替换为您自己的角色,如上例所示:

sed -e 's/","/"~"/g' csvfile

相关内容