无法在 Pandas 中导入逗号分隔的引用文件

Posted

技术标签:

【中文标题】无法在 Pandas 中导入逗号分隔的引用文件【英文标题】:Cannot import comma delimited quoted file in Pandas 【发布时间】:2020-01-14 15:04:10 【问题描述】:

我正在尝试将此数据导入Pandas。它在 Libreoffice 中正确导入,带有标题和 2 行。但是,在Pandas 中,它似乎没有导入。里面有一些换行符应该被忽略。但在 Pandas 中,它们被视为一个新行,而不是其中包含 \n 的单个字段。有没有人遇到过这样的问题。我尝试在Pandas 中设置quotecharsep 参数,但无法导入。

提前致谢

data is here

这应该在 Pandas 中导入为 2 行。但是,它被拆分为多行。

【问题讨论】:

用文本编辑器(记事本之类的)打开它,看看行的分隔符是什么。你遇到了什么错误? 提供一些示例数据和代码。 您的数据在数据之间也有“,”,因此熊猫无法正确读取。创建此 csv 时需要更改 sap 【参考方案1】:

您的问题是您的文本中有 " 作为转义字符 (\"),熊猫应该忽略。

例如

7/20/16:STS 降低,主动屈曲至 130,外展至 100,右手握力较弱。右侧缺少 6-8 个 \" IR,仅到腰部。

Lack 6-8 之后的 \" 不应被解释为引号字符。

你必须告诉熊猫。

应该可以的:

import pandas as pd

df = pd.read_csv("resources/data_to_post.csv", quotechar='"', escapechar='\\')
print(df)

输出

   id  ...                                      PlanGenerated
0   1  ...  A course of physical therapy was ordered. Mobi...
1   2  ...  The patient is instructed to return if pain or...

[2 rows x 17 columns]

只有两行,然后是 6 行。

【讨论】:

谢谢...你也可以看看最后一行 4。这似乎很奇怪 最后一行 4 是什么意思?奇怪的是什么? @prms 该行没有转义字符,数据似乎很好。要导入该 error_bad_lines 需要设置为 False 并且其他行被拆分为多个。我后来添加了那行 我明白了...您的数据不一致。在新行中,您有“out”。现在他将这个 " 解释为引号字符,即使它们并不意味着是引号字符......这会导致这种意外行为。如果您将其更改为 \" 或删除 " 那么它会起作用。@prms @prms 如果您将“out”更改为“out”,则应该修复它。如果您加载具有相同问题的其他数据,它也会中断。问题是不一致,我认为只有在预处理数据时才能修复它。不要以为熊猫能应付。

以上是关于无法在 Pandas 中导入逗号分隔的引用文件的主要内容,如果未能解决你的问题,请参考以下文章

在 SSMS 中导入平面文件时的小数分隔符

以逗号作为小数分隔符的数据框

从系统中导出来的EXCEL是逗号分隔值文件,打开是乱码。求助。

导入包含引号中的逗号的字段的 CSV 文件?

python从Microsoft Excel文件中导入数据

从非常大的表中导出逗号分隔的数据