536381,22411,珍宝购物复古红色佩斯利,10,12/1/2010 9:41,1.95,15311,英国
“536381,82567,"“航空公司休息室,金属标志”",2010年1月2日,9:41,2.1,15311,英国”
536381,21672,白色红色陶瓷抽屉旋钮,6,12/1/2010 9:41,1.25,15311,英国
这些行是csv文件中的行示例。我尝试在数据块中读取它,使用:
df = spark.read.csv ('file.csv', sep=',', inferSchema = 'true', quote = '"')
但是,由于字符串中的逗号,中间的一行和其他类似的行不能进入正确的列。我该如何解决这个问题?
2条答案
按热度按时间lymgl2op1#
将报价设置为:
看起来你的数据有双引号,所以当它被读取时,它会把双引号看作字符串的开始和结束。
编辑:我还假设问题出在这部分:
6psbrbz92#
这不仅与Excel有关,我在将数据从源检索到Azure Synapse时遇到了同样的问题。一列中的逗号会导致进程用双引号将整个列数据括起来,包括双引号,如上面第二行所示(请参见Retrieve CSV format over https)