我有一个csv文件,使用þ作为报价,段落符号作为逗号分隔值。read_csv使用不常见的分隔符
使用子类csv.Dialect不起作用。熊猫不会将这个数值解释为一个字符串。
任何想法?
# This works when the delimiters are more standard (; ")
# But really trying to make it work with the ASCII chars commented out below
import csv
f = open('./data/Test_Quote_SemiColon.dat')
class my_dialect(csv.Dialect):
lineterminator = '\n'
delimiter = ';' # ASCII: 020
quotechar = '"' # ASCII: 254
reader = csv.reader(f, dialect=my_dialect, quoting=1)
for line in reader:
print line
这里是(报价和半结肠)数据:
“BEGID”; “endID所”, “名称”, “要”, “从”; “CC”, “BCC” “ABC_001”;“ABC_004”;“Smith,John”;“Doe,John”;“Roe,Jane”;“”;“”012_“ABC_005”;“ABC_007” John“;”“;”“”;“”012_“ABC_008”;“ABC_012”;“Doe,John”;“Doe,John”;“Smith,John”;“”;“”
你能给你的数据的一个小例子(过去的CSV文件,或东西,看起来像它和复制问题的一部分),以及您用熊猫阅读的代码。 – joris 2014-09-13 17:58:39
在csv上使用什么编码?你有没有试过改变编码?你知道这些符号的ASCII代码,所以你可以做sep ='something'和quote ='something'? – Inox 2014-09-13 20:53:18