以反斜杠和引号作为分隔符读取Python中的csv文件
我有一个csv文件,其中的数据在记事本中显示时如下所示:以反斜杠和引号作为分隔符读取Python中的csv文件,python,pandas,csv,delimiter,backslash,Python,Pandas,Csv,Delimiter,Backslash,我有一个csv文件,其中的数据在记事本中显示时如下所示: | Column A | Column B | Column C | Column D | --------------------------------------------------- | "100053 | \"253\" | \"Apple\"| \"2020-01-01\" | | "100056 | \"254\&
| Column A | Column B | Column C | Column D |
---------------------------------------------------
| "100053 | \"253\" | \"Apple\"| \"2020-01-01\" |
| "100056 | \"254\" | \"Apple\"| \"2020-01-01\" |
| "100063 | \"255\" | \"Choco\"| \"2020-01-01\" |
我试过这个:
df = pd.read_csv("file_name.csv", sep='\t', low_memory=False)
但我得到的结果是
| Column A | Column B | Column C | Column D |
-------------------------------------------------------------
| 100053\t\253\" | \"Apple\" | \"2020-01-01\"| |
| 100056\t\254\" | \"Apple\" | \"2020-01-01\"| |
| 100063\t\255\" | \"Choco\" | \"2020-01-01\"| |
在删除所有额外字符的情况下,如何在相应列中以正确的格式获得输出?
我试过不同的定界符,escapechar的变体。。但是没有运气。也许我错过了什么
编辑:我想出了如何摆脱外部字符
df["ColumnB"]=df["ColumnB"].map(lambda x: str(x)[2:-2])
上面去掉了前面的2个字符和后面的2个字符。返回数据源并请求更干净的数据是一种选择吗?不幸的是,不是。忘记列A,有没有从其他列中提取\“之间的数据的方法?一种非Python的方法是打开Sublime,然后按
Ctrl-Shift-F
,并将/“
替换为空的”
空间