我有一个像下面这样的.csv文件,其中一些列名中也有逗号。
#NAME,DATE,RECORDS,QUANTITY
Johb.W. Smith, LLC,03/01/2018 to 03/29/2018,728,32309.77
XXX Industrial Ltd, Inc.,07/27/2017 to 07/28/2017,2,312.00
XYSC,03/02/2018 to 03/29/2018,387,4468.50
当我尝试在Python / Panda中读取它时,可用的列正在移位(因为系统将其视为新的行值,实际上并非如此)。
#NAME DATE RECORDS
Johb.W. Smith LLC 03/01/2018 728.0
XXX Industrial Ltd Inc. 07/27/2017 2.0
XYSC 03/02/2018 387
For.Ex-在ROW no-1,Johb.W。 Smith LLC是一个完整的名称(实际上在原始csv文件中用逗号分隔,因此将熊猫视为新的单元格值)
有谁能建议如何摆脱这个?实际输出应如下所示:
#NAME DATE RECORDS
Johb.W. Smith LLC 03/01/2018 to 03/29/2018 728
XXX Industrial Ltd Inc. 07/27/2017 to 07/28/2017 2
XYSC 03/02/2018 to 03/29/2018 387
答案 0 :(得分:2)
csv
存在问题,因为如果分隔符为,
且某些值包含,
,则显然会添加引用有效csv的值:
以下不是一般解决方案,如果有问题的值仅在第一列或最后一列中。
按分隔符创建一列DataFrame
,该列不在|
之类的数据中,并按rsplit
(split
)分隔参数n
{{1 } {},number of columns - 1
:
3
答案 1 :(得分:0)
手动输入数据或编辑文件以进行更正。
可以使用正则表达式或其他模式匹配来猜测值应该分离的位置,但这些不会在所有情况下都有效,并且很可能无法预测失败。
如果有人向您承诺提供csv文件,请拒绝此文件,并请他们很好地提供正确格式化的CSV文件。