跳过某些列中的分隔符时为read_csv

时间:2018-11-19 13:02:23

标签: python pandas csv

我的json文件格式错误。 我正在使用

阅读
mydata=pd.read_csv(afilename,header=0,usecols=[0,1,
                                                  4,5,
                                                  6,7,
                                                  8,9], 
                                         names=['ID', 'event',
                                                'a1','a2',
                                                'a3','a4',
                                                'a5','a6'])

正确读取列1和0。 但是,我的csv文件的以下列可能格式错误,并且包含诸如

 '{Foo={"name":"bar",quantity:1.0,quantity_type:"baz"}, Fuu={"name":"barbar" '

包含分隔符',',不幸的是,分隔符','也在其他地方使用了分隔符,并导致了其他拆分。

我事先不知道会有多少usecols/names,所以每次我更改$collectionName = $obj->data->collectionName; $docKey = $obj->data->key; $collection = $db->$collectionName; $cursor = $collection->find(); foreach ($cursor as $document) { $collection->update(array("_id"=>$document["_id"]),array('$pull'=>array("keys"=>$docKey))); } 列表以接收由于多余的分隔符而被拆分的列的片段时,都会出错,因为数字的列数不正确。

1 个答案:

答案 0 :(得分:3)

由于您正在读取JSON文件,因此应使用read_json方法而不是read_csv。如果您的JSON格式正确,这将起作用。

例如:

 date        number
 2018-11-30  7
 2018-10-28  1
 2018-09-05  9