Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 为xml对象创建csv需要花费太多时间_Python 3.x_Pandas - Fatal编程技术网

Python 3.x 为xml对象创建csv需要花费太多时间

Python 3.x 为xml对象创建csv需要花费太多时间,python-3.x,pandas,Python 3.x,Pandas,我有一个需要写入文件的xml对象。我发现这需要1个多小时才能完成10000条记录。我尝试使用df_merge['xml']=df_merge['xml']进行转换。astype(str)。所用的时间与此相似,即超过1小时,只是astype(str)需要更多的时间。因此,无论发生什么情况,完成到\u csv都需要1个多小时。 那么,我能知道如何快速地将大型xml对象写入文件吗? 10000个XML的大小约为600 MB df_merge.to_csv(settings.OUTPUT_XML, en

我有一个需要写入文件的xml对象。我发现这需要1个多小时才能完成10000条记录。我尝试使用
df_merge['xml']=df_merge['xml']进行转换。astype(str)
。所用的时间与此相似,即超过1小时,只是
astype(str)
需要更多的时间。因此,无论发生什么情况,完成
到\u csv
都需要1个多小时。 那么,我能知道如何快速地将大型xml对象写入文件吗? 10000个XML的大小约为600 MB

df_merge.to_csv(settings.OUTPUT_XML, encoding='utf-8', index=False,
                columns=['xml'])
后来我尝试使用
np.savetxt
,这也需要类似的时间

import numpy as np
np.savetxt('output_xml.txt', df_merge['xml'], encoding='utf-8', fmt="%s")
你可以考虑使用。这是一个很好的库,或者其他常见的序列化工具,如

在您的情况下,您可能能够使用下面的一些示例代码序列化您的对象,并且这样做的时间要长得多:

# Import joblib's dump function
from joblib import dump

# For speed, keep compression = 0
dump(df_merge, 'df_merge.joblib')

# For smaller file size, you can increase compression, though it will slow your write time
# dump(df_merge, 'df_merge.joblib', compress=9)
然后可以使用
joblib
加载文件,如下所示:

# Import joblib's load function
from joblib import load

# For speed, keep compression = 0
# Note, if you used compress=n, then it will take longer to load
df_merge = load('df_merge.joblib')