Python导入csv文件时使用逗号和双引号

2izufjch  于 2023-04-09  发布在  Python
关注(0)|答案(1)|浏览(207)

我想导入一个csv文件,它的分隔符是逗号,但是我不想解析双引号下的逗号:

region,votes,share,liste
1,1453,"45,16",ABC
2,5489,"54,17","BCD,DEF"
3,5486,32,WSE

我想要的数据框架

region votes share liste
1      1453  45.16 ABC
2      5489  54.17 BCD DEF
3      5486  32    WSE

考虑到前面的问题Python parse CSV ignoring comma with double-quotes,我尝试了以下代码:

df=csvReader(myfile, quotechar='"', delimiter=',', quoting=csv.QUOTE_ALL, skipinitialspace=True)

但我收到了以下信息

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

如何正确导入此数据集?

kg7wmglp

kg7wmglp1#

对于pandas,一个非常基本的方法是将(,)设置为read_csv中要识别为十进制的字符,然后在非数字列中设置replace剩余的逗号和单个 * 空格 *。

df = pd.read_csv(myfile, decimal=",").replace(",", " ", regex=True)

输出:

print(df)

   region  votes  share    liste
0       1   1453  45.16      ABC
1       2   5489  54.17  BCD DEF
2       3   5486  32.00      WSE

相关问题