我有一个Python代码可以正常使用有20行的文件,但是当我尝试发送带有60.000条记录的同一文件时,它会显示&#34; 108936分段错误&#34;。< / p>
有没有办法避免这个错误,这是我的机器吗?或者有更好的方法来做到这一点?我使用Pandas因为我需要有时合并到DataFrame(pd.merge())。
这是我的代码:
import pandas as pd
import json
columns = [u'SalesOrderID', u'OrderDate', u'DueDate', u'ShipDate', u'SalesOrderNumber', u'Title', u'FirstName', u'MiddleName', u'LastName', u'Suffix', u'PhoneNumber', u'PhoneNumberType', u'EmailAddress', u'EmailPromotion', u'AddressType', u'AddressLine1', u'AddressLine2', u'City', u'StateProvinceName', u'PostalCode', u'CountryRegionName', u'SubTotal', u'TaxAmt', u'Freight', u'TotalDue', u'UnitPrice', u'ProductName', u'ProductSubcategory', u'ProductCategory']
data = pd.read_csv('../Uploads/TxtData.txt', header=0, names=columns, sep='\t')
data.to_json(orient='records')
使用的文件:
答案 0 :(得分:0)
DataFrame.to_json中存在一个已知问题。
https://github.com/pandas-dev/pandas/issues/14256#issuecomment-249583941
解决这个问题的唯一方法是使用default_handler将对象转换为标准的json数据类型。我不知道txt.data中有什么,我不知道csv文件中有什么可能是异乎寻常的,但你需要一个default_handler。