繁体   English   中英

如何使用逗号分隔符和逗号分隔符读取熊猫CSV文件

[英]How to read pandas CSV file with comma separator and comma thousand separator

我有一个csv文件,其行如下所示: 87.89,“ 2,392.05”,14.77,373.2 (第三行有逗号分隔符)

熊猫一直将第二列中的逗号视为行分隔符,并显示“错误标记数据”错误。

大熊猫之间有没有人可以忽略双引号之间的昏迷? 谢谢

样本行:

9999992613813558569,87.89,"2,392.05",14.77,373.2
9999987064038821584,95.11,"3,397.04",42.15,"1,461.14"
9999956300203713283,6.67,194.02,41.23,"1,105.45"
9999946809576027532,15.08,353.84,29.43,591.9

编辑:

我已经尝试了:

read_csv(file, quotechar='"', encoding='latin1', thousands=',')
read_csv(file, quotechar='"', encoding='latin1', escapechar ='"')

尝试阅读:

pd.read_csv(myfile, encoding='latin1', quotechar='"')

包含这些内容的每一列都将被视为type object 一旦掌握了这一点,就可以使用float:

df = df.apply(lambda x: pd.to_numeric(x.astype(str).str.replace(',',''), errors='coerce'))

另外,您可以尝试:

pd.read_csv(myfile, encoding='latin1', quotechar='"', error_bad_lines=False)

在这里,您可以看到原始csv中遗漏的内容-引起问题的原因。

对于省略的每一行,您将收到Warning而不是Error

这为我工作:

pd.read_csv(myfile, encoding='latin1', quotechar='"', thousands=',')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM