使用带有转义字符的熊猫将 csv 转换为 tsv

dwa*_*ohn 5 python csv pandas

我有一个示例 csv 文件包含

col1
"hello \n
world"
"the quick \njump
\n \r \t brown fox"
Run Code Online (Sandbox Code Playgroud)

示例代码转换为 tsv

import pandas as pd
df = read_csv(r'a.csv')

df.to_csv('data.tsv', sep='\t', encoding='utf-8', escapechar='\n')
Run Code Online (Sandbox Code Playgroud)

期待的结果是

col1
"hello \n world"
"the quick \njump \n \r \t brown fox"
Run Code Online (Sandbox Code Playgroud)

但结果是

col1
"hello \n
world"
"the quick \njump
\n \r \t brown fox"
Run Code Online (Sandbox Code Playgroud)

dea*_*hot 5

escapechar在阅读 csv 时使用对我有用。但它在转换为 tsv 时跳过双引号。

df = pd.read_csv(r'a.csv', escapechar='\n')

df.to_csv('data.tsv', sep='\t', encoding='utf-8', index=False)
Run Code Online (Sandbox Code Playgroud)

输出:

col1
hello \nworld
the quick \njump\n \r \t brown fox
Run Code Online (Sandbox Code Playgroud)